博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
内网部署 JavaScript Arcgis API 服务
阅读量:17414 次
发布时间:2019-09-18

本文共 2110 字,大约阅读时间需要 7 分钟。

应本司需求,需做一个arcgis工具,奈何客户所在网络不许连接外网,但是arcgis的案例中使用的都是arcgis的在线服务。使得你在外围开发的东西,到了内网就都成了废物。今天小小的总结一下我的配置过程,以作备忘,共大家探讨交流。

首先提供一些未使用本地(内网)arcgis服务的报错信息(大致了解一下,可忽略不看):

1 . jsapi_zh-cn.js Failed to load resource: net::ERR_NAME_NOT_RESOLVED

2. init.js:37 Error: scriptError

        at c (init.js:11)
        at HTMLScriptElement.<anonymous> (init.js:35)
   (anonymous) @ init.js:37
   (anonymous) @ init.js:15
    d @ init.js:10
    k.signal @ init.js:15
    (anonymous) @ init.js:35
    init.js:37 src: dojoLoader
    init.js:37 info: (2) ["https://js.arcgis.com/3.23/esri/nls/jsapi_zh-cn.js", Event]

3. Error: scriptError

        at c (init.js:11)
        at HTMLScriptElement.<anonymous> (init.js:35)
    (anonymous) @ init.js:37
    (anonymous) @ init.js:15
    d @ init.js:10
    k.signal @ init.js:15
    (anonymous) @ init.js:35
    init.js:37 src: dojoLoader

    init.js:37 info: (2) ["https://js.arcgis.com/3.23/esri/layers/VectorTileLayerImpl.js", Event]

还有很多类似的js错误,就不列举了。

解决方案:本地(内网)部署arcgis服务

   1.你首先要拥有自己的内网地图地图服务,我们使用的亿阳内网地图服务。

   2. 下载ArcGIS JavaScript API(需要注册ArcGis账号):

        https://developers.arcgis.com/downloads/apis-and-sdks?product=javascript  (选择你所使用的版本,我使用的是3.23);

 

2. 点击下载完成之后,解压下载好的压缩包,里面的文件如图:

    

        其实到这里本文字基本就算结束了,你只要打开install.html文件,里面详细的描述了内网的安装过程。

        如果你觉得看英文费劲,你可以:

        1 . 使用google chrome 浏览器的翻译功能,

        2. 我接下来简洁明要的概述安装过程

3 . 安装简要概述:

1。确定你的容器,windows环境可以是IIS / tomcat , Linux建议是tomcat / jetty 都可以

2.将arcgis_js_api 整个文件复制到 wwwroot / webapps ...(即你所使用的容器存放项目的位置即可),我们暂且就叫它WEB_HOME

3. 更改配置,官方建议使用的是https协议,很明显我们内网使用http协议就好,

    1) WEB_HOME\arcgis_js_api\library\3.23\3.23\init.js在文本编辑器中打开并搜索文本"http://[HOSTNAME_AND_PATH_TO_JSAPI]dojo",并将其替换为"https://<hostname/ip:port>/arcgis_js_api/library/3.23/3.23/dojo"

    2)  WEB_HOME\arcgis_js_api\library\3.23\3.23\dojo\dojo.js在文本编辑器中打开并搜索文本"https://[HOSTNAME_AND_PATH_TO_JSAPI]dojo",并将其替换为"https://<myserver>/arcgis_js_api/library/3.23/3.23/dojo"

 3) 将地图服务替换成你的内网地图服务,打开WEB_HOME\arcgis_js_api\library\3.23\3.23\init.js,搜索https://services.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer,然后替换成你的内网地图服务:http://192.168.1.12:8099/arcgis/rest/services/gxyx/MapServer

     

4.验证你的服务是否正常:

    输入 HTTPS:// <MYSERVER> /arcgis_js_api/library/3.23/3.23/init.js,看是否可以正常访问到js内容。

   

你可能感兴趣的文章
【English】【托业】【四六级】写译高频词汇
查看>>
【托业】【新东方全真模拟】01~02-----P5~6
查看>>
【托业】【新东方全真模拟】03~04-----P5~6
查看>>
【托业】【新东方托业全真模拟】TEST05~06-----P5~6
查看>>
【托业】【新东方托业全真模拟】TEST09~10-----P5~6
查看>>
【托业】【新东方托业全真模拟】TEST07~08-----P5~6
查看>>
solver及其配置
查看>>
JAVA多线程之volatile 与 synchronized 的比较
查看>>
Java集合框架知识梳理
查看>>
笔试题(一)—— java基础
查看>>
Redis学习笔记(三)—— 使用redis客户端连接windows和linux下的redis并解决无法连接redis的问题
查看>>
Intellij IDEA使用(一)—— 安装Intellij IDEA(ideaIU-2017.2.3)并完成Intellij IDEA的简单配置
查看>>
Intellij IDEA使用(二)—— 在Intellij IDEA中配置JDK(SDK)
查看>>
Intellij IDEA使用(三)——在Intellij IDEA中配置Tomcat服务器
查看>>
Intellij IDEA使用(四)—— 使用Intellij IDEA创建静态的web(HTML)项目
查看>>
Intellij IDEA使用(五)—— Intellij IDEA在使用中的一些其他常用功能或常用配置收集
查看>>
Intellij IDEA使用(六)—— 使用Intellij IDEA创建Java项目并配置jar包
查看>>
Eclipse使用(十)—— 使用Eclipse创建简单的Maven Java项目
查看>>
Eclipse使用(十一)—— 使用Eclipse创建简单的Maven JavaWeb项目
查看>>
Intellij IDEA使用(十三)—— 在Intellij IDEA中配置Maven
查看>>