惭愧,和我的学弟比起来,我所开始接触前端开发,ArcGIS API for JavaScript的时间和深度远远不及于他。

一年之尾,亦是一年之始,我也将正式开始我的博客生涯。本人在校学习并且做项目,在其过程中自然会遇到不少困惑与问题,遂将这些问题的解决方法与一些想法整理发布在这个平台上,也算是自己学习的一个总结与积累。如果有什么问题与错误,期望大家多多指正,共同学习。

本人在做前端开发时,调用ArcGIS对于JS的API(网络资源获取),但是经常出现无法获取相关JS与CSS资源的情况。在这种情况反复出现多次之后,我忍不住,终究还是实现该资源的本地化部署。

1、资源下载

ArcGIS API for JavaScript官网地址:https://developers.arcgis.com/javascript/

API下载地址:https://developers.arcgis.com/sign-in?redirect_uri=%2Fdownloads%2Fapis-and-sdks%3Fproduct%3Djavascript

账户注册地址(搜索ArGIS Online):https://www.arcgis.com/home/signin.html?returnUrl=https%3A%2F%2Fdoc.arcgis.com%2Fzh-cn%2Farcgis-online%2F

注册完帐户即可免费下载最新或者其他版本的API。(话说我4.5还没摸熟,4.6就出来了。。。)

2、资源部署

这方面其他的博客也有提到,但是在此我还是写一遍。具体是在WIndows环境下,不使用Node.JS,部署资源到IIS上。

2.1解压

如上图是4.6版本的API。

解压后如上图所示,点击install.html,将出现英文版的安装教程,包括Windows、Linux环境或者是Node.JS中由NPM下载等等。

2.2配置与替换参数

这里参考资源包里install.html中关于WIndows环境下的部署:

总结上述,就是IIS要设置相应的MIME格式注册,将资源文件夹下的dojo.js与init.js进行相应的参数替换。

那么问题来了。。。

文档中替换的字段中包含如下字段:。我按照此说明一步一步去做并不能实现资源的本地化,并出现404错误。

所以:

我在这个的基础上修改了替换的字段:

将  https://[HOSTNAME_AND_PATH_TO_JSAPI]dojo 替换为 http://localhost/arcgis_js_api_4.6/library/4.6/dojo;

将  https://[HOSTNAME_AND_PATH_TO_JSAPI]init 替换为 http://localhost/arcgis_js_api_4.6/library/4.6/init;

2.3部署

将修改过后的整个文件夹复制到IIS下文件夹下,默认为C:\inetpub\wwwroot,再在IIS服务器中确认此文件夹,并设置其目录浏览启动。

最后,修改文件夹下的web.config参数,设置如下:

大功告成!

3、资源引用

根据你所设的参数(即你在dojo.js与init.js文件中的替换参数),使用对应的url,我的如下图所示:

最后示例如下:

结尾:我之前其实自己试过用如openLayers、leaflet等其他开源的webmap api写过一些例子。在老师的建议下,ArcGIS API for JavaScript是我现在主要使用的API,且行且学习。。。

【1】ArcGIS API for JavaScript 4.5/4.6 本地部署的更多相关文章

  1. 基于ArcGIS API for Javascript的地图编辑工具

    最近工作上需要用ArcGIS API for Javascript来开发一个浏览器上使用的地图编辑工具,分享一下一些相关的开发经验. 我开发的地图编辑工具是根据ESRI提供的例子修改而来的,参考的例子 ...

  2. ArcGIS API for JavaScript(2)-ArcGIS Server发布要素图层服务

    1.前言 上一篇该系列的文章我们主要讲了一下基础Web地图搭建,这篇我们主要讲一下ArcGIS Server发布服务,并且如何调用服务.将自己的数据加载到Web地图当中来,实现Web端浏览数据. 2. ...

  3. ArcGIS API for JavaScript 4.0(一)

    原文:ArcGIS API for JavaScript 4.0(一) 最近ArcGIS推出了ArcGIS API for JavaScript 4.0,支持无插件3D显示,而且比较Unity和Sky ...

  4. ArcGIS API for JavaScript开发环境搭建及第一个实例demo

    原文:ArcGIS API for JavaScript开发环境搭建及第一个实例demo ESRI公司截止到目前已经发布了最新的ArcGIS Server for JavaScript API v3. ...

  5. 创建ArcGIS API for JavaScript的第一个示例程序

    原文:创建ArcGIS API for JavaScript的第一个示例程序 在上一篇博客中已经介绍了如何搭建ArcGIS API for JavaScript开发环境,如果您还没有搭建好开发环境的话 ...

  6. RequireJS加载ArcGIS API for JavaScript

    1.在main.js中配置ArcGIS API for JavaScript require.config({ paths : { //arcgisJS "esri": " ...

  7. arcgis api for javascript 3.16开发(一)

    原来一直都在用Flex开发arcgis的地图接口,用的时间很长,用的习惯也顺手,可Flex这个开发工具已经基本要淘汰了,并且地图借助flash的方式加载在浏览器里已经不能适应webgis的快速开发需求 ...

  8. ArcGIS API for JavaScript介绍

    ArcGIS API for JavaScript中的类是按照模块组织的,主要包含esri.esri/geometry.esri/renderers.esri/symbols.esri/symbols ...

  9. ArcGIS.Server.9.3和ArcGIS API for JavaScript地图实现Toorbar功能(四)

    转自:http://www.cnblogs.com/hll2008/archive/2008/11/22/1338630.html 目的:1.ArcGIS API for JavaScript实现To ...

随机推荐

  1. socket.io 入门篇(二)

    本文原文地址:https://www.limitcode.com/detail/5922f1ccb1d4fe074099d9cd.html 前言 上篇我们介绍了 socket.io 基本使用方法,本篇 ...

  2. 深入浅出多线程——ReentrantLock (一)

    ReentrantLock是一个排它重入锁,与synchronized关键字语意类似,但比其功能更为强大.该类位于java.util.concurrent.locks包下,是Lock接口的实现类.基本 ...

  3. REMOTE_ADDR,HTTP_CLIENT_IP,HTTP_X_FORWARDED_FOR获取客户端IP

    话不多说,先上代码: /**  * 获得用户的真实IP地址  *  * @access  public  * @return  string  */ function real_ip() {      ...

  4. 分布式监控系统Zabbix3.2跳坑指南

    zabbix是什么在此就不多作介绍了,可以参考之前的文章 零代码如何打造自己的实时监控预警系统 ,这篇主要介绍安装及注意事项. 主要分为服务端和客户端安装,客户端又分为Linux.Windows. 服 ...

  5. is 和==的区别

    Python中的对象包含三要素:id.type.value.其中id用来唯一标识一个对象,type标识对象的类型,value是对象的值.is判断的是a对象是否就是b对象,是通过id来判断的.==判断的 ...

  6. 一个简单的 js 时间对象创建

    JS中获取时间很常见,凑凑热闹,也获取一个时间对象试试 首先,先了解js的获取时间函数如下: var myDate = new Date();          //创建一个时间对象 myDate.g ...

  7. yum中$releasever、 $basearch等变量含义

    [root@kickstart ~]# rpm -qf /etc/redhat-release centos-release--4.1708.el7.centos.x86_64 yum中的$relea ...

  8. jQuery的$.ajax方法响应数据类型有哪几种?本质上原生ajax响应数据格式有哪几种,分别对应哪个属性?

    jQuery的$.ajax方法响应数据类型有:xml.html.script.json.jsonp.text 本质上原生ajax响应数据格式只有2种:xml和text,分别对应xhr.response ...

  9. C#基础,目录

    首先,要说明一下本系列会以使用C#为侧重点,不会系统的.大篇量的去解说一些名词,比如:runtime.IL等.文章会在合适的时候对用到的基本概念进行简述.如果你是初学者,建议你也不要过度的去纠结,等你 ...

  10. javascript设计模式——组合模式

    前面的话 在程序设计中,有一些和“事物是由相似的子事物构成”类似的思想.组合模式就是用小的子对象来构建更大的对象,而这些小的子对象本身也许是由更小的“孙对象”构成的.本文将详细介绍组合模式 宏命令 宏 ...