ArcGIS API for JavaScript超强部署方案

简介: 配置ArcGIS API for JavaScript,帮助入门的GISer跨过第一道门槛,同时也作为对工作的梳理、记录。

很多GISer或者非GISer,在要学GIS界最强大的ArcGIS API for JavaScript的时候是不是被API的配置给搞懵了,是不是被SSL证书或者HTTPS搞瞎了,是不是有种,我还没入门,就让我先解决这些和GIS没关系的问题?还有什么FQDN(Fully qualified domain name:完全限定域名).......你心累,不巧!今天我师弟就问我4.X的API部署不了,要什么SSL证书。嗯,我也其实挺心累的。作为混了好几年的GISer,感觉有必要写一份入门级部署API的博客了。

下载API

官方地址: http://links.esri.com/javascript-api/latest-downloadhttps://developers.arcgis.com/downloads/apis-and-sdks?product=javascript , 当然你得有个Esri的开发者账号,如果没有,那就申请一个,切记跟着邮件内容走,否则会走错路。登录之后是如下页面:
image

相信你已经看到了要看到的,点击蓝色API按钮,默默等待浏览器下载完毕。当然你如果需要把SDK也部署到本地,就点击Document,下载。

配置

  1. 将下载的ZIP包解压到我的项目WMS1/gis中,打开解压后的文件,双击index.html,选择你要部署的平台,可以随便选择一个, 我选择了ArcGIS API for JavaScript; 在这需要说明, 我要部署的是和平台无关的,只是和你的Web访问目录有关的超强配置. Write once, run in any Web container!
    image
  2. 打开后直接定位到Modify the Build (manually)节点;别的都不用看。 如下显示:
    image
  3. 移动文件;将/library/4.6/下的所有文件拷贝到arcgis_js_api文件下,并将library文件夹删除。效果如下:
    image
  4. 根据提示,用Notepad++打开加压包目录下的[api package] /arcgis_js_api/dojo/dojo.js;查找提示的文字 [HOSTNAME_AND_PATH_TO_JSAPI];搜索到之后将baseUrl中的值宣布 选中,用 /WMS1/gis/arcgis_js_api/dojo"替换;效果如下:
    image
  5. 对[api package]/arcgis_js_api/init.js进行同样的操作,效果如下:
    c74cb97e83d90165eb2373fbd3ab1c95b2272d66
  6. 测试部署是否成功;拷贝如下代码到WMS1/gis/index.html中

    <!DOCTYPE html>
    <html>
    <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
      <meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no" />
      <title>Test Map</title>
      <link rel="stylesheet" href="/WMS1/gis/arcgis_js_api/dijit/themes/cl aro/clarocss" />
      <link rel="stylesheet" href="/WMS1/gis/arcgis_js_api/esri/css/main.  css" />
      <style>
      html,
      body,
      #viewDiv {
      margin: 0;
      padding: 0;
      width: 100%;
      height: 100%;
      }
    </style>
    <script src="/WMS1/gis/arcgis_js_api/dojo/dojo.js"></script>
    <script>
    var myMap, view;
    require([
    "esri/Map",
    "esri/views/MapView",
    "dojo/domReady!"
    ], function (Map, MapView) {
    myMap = new Map({
    basemap: 'osm'
    });
    view = new MapView({
    center: [-111.87, 40.57], // long, lat
    container: "viewDiv",
    map: myMap,
    zoom: 6
    });
    });
    </script>
    </head>
    <body class="claro">
    <div id="viewDiv"></div>
    </body>
    </html>
  7. 神奇的事情有木有发生?我是发生了。
    image
  8. 到此我们的环境就配置好了,你的小宇宙该爆发了。

总结

ArcGIS JS API的配置只是和你项目启动的Web容器的路径有关系,和HTTPS还是HTTP、SSL并没有太大关系,如果要将API部署在远程机器上,那一般情况就是需要了解HTTPS、HTTP、FQDN等等了,这也是官方推荐的方法;使用上面这种配置的好处是,我的项目跟协议、主机名还有端口没有任何关系,只是和启动的Web容器的相对目录有关了。这在Node的http-server或者Webpack-devServer等作为Web启动容器的时候,你想在Linux还是Unix上运行都木问题的,而且目录位置随便放。只能帮你到这了。

目录
相关文章
|
3天前
|
存储 人工智能 API
AgentScope:阿里开源多智能体低代码开发平台,支持一键导出源码、多种模型API和本地模型部署
AgentScope是阿里巴巴集团开源的多智能体开发平台,旨在帮助开发者轻松构建和部署多智能体应用。该平台提供分布式支持,内置多种模型API和本地模型部署选项,支持多模态数据处理。
55 4
AgentScope:阿里开源多智能体低代码开发平台,支持一键导出源码、多种模型API和本地模型部署
|
1月前
|
JSON 缓存 JavaScript
深入浅出:使用Node.js构建RESTful API
在这个数字时代,API已成为软件开发的基石之一。本文旨在引导初学者通过Node.js和Express框架快速搭建一个功能完备的RESTful API。我们将从零开始,逐步深入,不仅涉及代码编写,还包括设计原则、最佳实践及调试技巧。无论你是初探后端开发,还是希望扩展你的技术栈,这篇文章都将是你的理想指南。
|
23天前
|
JSON JavaScript 前端开发
深入浅出Node.js:从零开始构建RESTful API
在数字化时代的浪潮中,后端开发作为连接用户与数据的桥梁,扮演着至关重要的角色。本文将引导您步入Node.js的奇妙世界,通过实践操作,掌握如何使用这一强大的JavaScript运行时环境构建高效、可扩展的RESTful API。我们将一同探索Express框架的使用,学习如何设计API端点,处理数据请求,并实现身份验证机制,最终部署我们的成果到云服务器上。无论您是初学者还是有一定基础的开发者,这篇文章都将为您打开一扇通往后端开发深层知识的大门。
38 12
|
1月前
|
JavaScript NoSQL API
深入浅出Node.js:从零开始构建RESTful API
在数字化时代的浪潮中,后端开发如同一座灯塔,指引着数据的海洋。本文将带你航行在Node.js的海域,探索如何从一张白纸到完成一个功能完备的RESTful API。我们将一起学习如何搭建开发环境、设计API结构、处理数据请求与响应,以及实现数据库交互。准备好了吗?启航吧!
|
1月前
|
JavaScript 前端开发 API
Vue.js 3:探索组合式API带来的新变革
Vue.js 3:探索组合式API带来的新变革
|
1月前
|
JavaScript 前端开发 API
Vue.js 3中的Composition API:提升你的组件开发体验
Vue.js 3中的Composition API:提升你的组件开发体验
|
1月前
|
JSON JavaScript API
深入浅出Node.js:从零开始构建RESTful API
【10月更文挑战第39天】 在数字化时代的浪潮中,API(应用程序编程接口)已成为连接不同软件应用的桥梁。本文将带领读者从零基础出发,逐步深入Node.js的世界,最终实现一个功能完备的RESTful API。通过实践,我们将探索如何利用Node.js的异步特性和强大的生态系统来构建高效、可扩展的服务。准备好迎接代码和概念的碰撞,一起解锁后端开发的新篇章。
|
1月前
|
资源调度 前端开发 JavaScript
vite3+vue3 实现前端部署加密混淆 javascript-obfuscator
【11月更文挑战第10天】本文介绍了在 Vite 3 + Vue 3 项目中使用 `javascript-obfuscator` 实现前端代码加密混淆的详细步骤,包括安装依赖、创建混淆脚本、修改 `package.json` 脚本命令、构建项目并执行混淆,以及在 HTML 文件中引用混淆后的文件。通过这些步骤,可以有效提高代码的安全性。
|
1月前
|
JavaScript 中间件 API
Node.js进阶:Koa框架下的RESTful API设计与实现
【10月更文挑战第28天】本文介绍了如何在Koa框架下设计与实现RESTful API。首先概述了Koa框架的特点,接着讲解了RESTful API的设计原则,包括无状态和统一接口。最后,通过一个简单的博客系统示例,详细展示了如何使用Koa和koa-router实现常见的CRUD操作,包括获取、创建、更新和删除文章。
51 4
|
1月前
|
JavaScript 前端开发 API
Vue.js 3:深入探索组合式API的实践与应用
Vue.js 3:深入探索组合式API的实践与应用