arcis api for js 值 3.17 本地部署
1. 引言
在學習 ArcGIS API 的過程中,如果我們引用在線的 API,在沒有網絡或者網絡差的情況下,會影響到我們的學習效率,本篇文章就是為了解決這個問題。下載 ArcGIS API 之後,部署到本地,會大大提高用戶體驗。
2. 步驟
在部署之前,我們要下載 API ,這裏我分享下各個版本的 API,有需要的請自行下載,提取碼為 ajx1
將文件部署到本地,然後通過 HTTP 的方式訪問,這就需要將本機當成服務器,以下兩種方法就是通過不同的服務器部署的(ISS 和 Tomcat)。
2.1 ISS 部署
2.1.1 打開 ISS 功能
按照以下順序進行操作:打開控制面板 - 程序 - 打開或關閉 Windows 功能,以下是一些需要打開的功能。點擊確定後等待開啟。
註 打開 ISS 功能之後,我們會發現 C 盤下多了一個 inetpub 文件夾(如果是按照默認配置的話)。inetpub 文件夾進去之後的 wwwroot 就是我們服務的根目錄。
如果我們把一個 thst.html 文件放在 wwroot 文件夾下,那麽訪問路徑就為 http://localhost/test.html
2.1.2 修改 dojo.js 和 init.js 文件
解壓下載好的 api 壓縮包,裏面有一個 install_API.html 文件,我們修改這兩個文件主要是根據這個文件,打開之後點擊 windows,跳轉 windows 配置的頁面。
雖然該 HTML 文件是英文,我們只需找到我們所需要的信息就可以了。
根據上面的提示,我們找到 init.js 和 dojo.js 文件中的 [HOSTNAME_AND_PATH_TO_JSAPI],改成 : http://localhost/... ,localhost 後面加上的路徑確保能夠訪問到 init.js 文件。
例如我 init.js 文件是在這個路徑: C:\inetpub\wwwroot\arcgis_js_api_v320\library\3.20\3.20\init.js,那麽我應該講上述配置改為 http://localhost/arcgis_js_api_v320/library/3.20/3.20。
接下來的三個配置和這個類似,就不再展開。
2.1.3 測試部署是否成功
按照上面的配置,確保在瀏覽器窗口輸入 http://localhost/arcgis_js_api_v320/library/3.20/3.20compact/init.js ,如果能夠訪問到 init.js 文件。根據不同的部署環境應輸入不同 URL。
接著講下面這段代碼放在一個 HTML 文件中,如果能夠看到以下畫面,說明 API 部署成功。
註 需要將 兩個 link 標簽和一個 script 標簽後面鏈接的文件地址改以下。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>Simple Map</title>
<link rel="stylesheet" type="text/css" href="http://localhost/arcgis_js_api_v320/library/3.20/3.20/dijit/themes/tundra/tundra.css"/>
<link rel="stylesheet" type="text/css" href="http://localhost/arcgis_js_api_v320/library/3.20/3.20/esri/css/esri.css" />
<script type="text/javascript" src="http://localhost/arcgis_js_api_v320/library/3.20/3.20/init.js"></script>
<script type="text/javascript">
dojo.require("esri.map");
function init() {
var myMap = new esri.Map("mapDiv");
var myTiledMapServiceLayer = new esri.layers.ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/NGS_Topo_US_2D/MapServer");
myMap.addLayer(myTiledMapServiceLayer);
}
dojo.addOnLoad(init);
</script>
</head>
<body class="tundra">
<div id="mapDiv" style="width:900px; height:600px; border:1px solid #000;"></div>
</body>
</html>
2.2 Tomcat 部署
有了在 ISS 環境部署的經驗,在 Tomcat 部署本質上是一樣的。這裏說明下一個需要主意的地方:
在修改 init.js 和 dojo.js 文件時,需要將路徑修改為 http://localhost:8080/ ,這個路徑表示 Tomcat 的 webapps 文件夾,在測試部署是否成功時,將 html 文件中的三個鏈接修改為對應的路徑即可。
arcis api for js 值 3.17 本地部署