惭愧,和我的学弟比起来,我所开始接触前端开发,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. LKD: Chapter 7 Interrupts and Interrupt Handlers

    Recently I realized my English is still far from good. So in order to improve my English, I must not ...

  2. 逻辑回归,附tensorflow实现

    本文旨在通过二元分类问题.多元分类问题介绍逻辑回归算法,并实现一个简单的数字分类程序 在生活中,我们经常会碰到这样的问题: 根据苹果表皮颜色判断是青苹果还是红苹果 根据体温判断是否发烧 这种答案只有两 ...

  3. Transform组件以及相关API

    Transform.Translate(Vector3,Space):以自身坐标系或者世界坐标系向某个方向移动物体. Vector3:表示方向和移动的距离. Space:空间.枚举类型,用来确定坐标系 ...

  4. TFboy养成记 简单小程序(Variable & placeholder)

    学习参考周莫烦的视频. Variable:主要是用于训练变量之类的.比如我们经常使用的网络权重,偏置. 值得注意的是Variable在声明是必须赋予初始值.在训练过程中该值很可能会进行不断的加减操作变 ...

  5. 75、django之ORM补充

    本篇导航: QuerySet 中介模型 查询优化 一.QuerySet 1.可切片 使用Python 的切片语法来限制查询集记录的数目 .它等同于SQL 的LIMIT 和OFFSET 子句. > ...

  6. ios协议和委托

    在iPhone开发协议和委托是常接触到的东西,到底什么是协议什么是委托,他们什么关系? 一 协议 (1)协议相当于没有与类相关联的接口,他申明一组方法,列出他的参数和返回值,共享给其他类使用,然后不进 ...

  7. linux端口开放指定端口的两种方法

    重要的事情说三遍,强烈建议使用第二种方法!第二种方法!第二!; 开放端口的方法: 方法一:命令行方式                1. 开放端口命令: /sbin/iptables -I INPUT ...

  8. 16. 使用Exhibitor管理ZooKeeper

    Exhibitor是管理ZooKeeper服务实例的主管服务.由Netflix开发和开放源码,对于ZooKeeper的实例监控.备份/恢复.清理和可视化非常有用. Note Netflix Exhib ...

  9. Nginx 搭建rtmp直播服务器

    1.到nginx源码目录新建个rtmp目录 ,进入  git clone https://github.com/arut/nginx-rtmp-module.git   2.重编译nginx 代码如下 ...

  10. MYSQL 主从复制---简单易学

    本帖最后由 传说中的草包 于 2017-4-12 09:12 编辑为什么要用mysql主从复制? 这个问题不需要回答吧,,,,,想想,一个人干活快呢,还是一万个能性格功力一样的人干活快呢. 不用解释大 ...