ArcGIS API for Javascript 2.X 离线部署(以2.6为例)
2011-12-22 16:16
585 查看
1. 先在官网上ArcGIS API for JavaScript download page(需要有账户)下载最新的API:arcgis_js_v26_api.zip(点击直接下载)和 SDK: arcgis_js_v26_sdk.zip(直接下载);
2. 将下载下来的 arcgis_js_v26_api.zip 和 arcgis_js_v26_sdk.zip 分别解压,将各自文件夹下的的 arcgis_js_api 文件夹拷贝到 C:\inetpub\wwwroot 下,因为拷贝的文件夹名称都为arcgis_js_api,因此当拷贝第二个文件夹时选择覆盖即可;
3. 将 C:\inetpub\wwwroot\arcgis_js_api\library\2.6\jsapi\js\esri 下的 esri.js 文件
C:\inetpub\wwwroot\arcgis_js_api\library\2.6\jsapi\js\dojo\dojo 下的 dojo.xd.js 及 dojo.xd.js.uncompressed.js 两个文件
中的 "[HOSTNAME_AND_PATH_TO_JSAPI] 替换为 djConfig.url + "/arcgis_js_api/library/2.6/jsapi/ (注意别少了冒号)
同理将
C:\inetpub\wwwroot\arcgis_js_api\library\2.6\jsapicompact\js\esri 下的 esri.js 文件
C:\inetpub\wwwroot\arcgis_js_api\library\2.6\jsapicompact\js\dojo\dojo 下的 dojo.xd.js 及 dojo.xd.js.uncompressed.js 两个文件
中的 "[HOSTNAME_AND_PATH_TO_JSAPI] 替换为 djConfig.url + "/arcgis_js_api/library/2.6/jsapicompact/ (注意冒号);
4. 在IIS中将 arcgis_js_api 转换为应用程序,并在默认文档中添加:default.ashx ;
5. var djConfig = { parseOnLoad: true, url: "localhost" }; 加一个url属性,url为api所在服务器IP地址
将 http://serverapi.arcgisonline.com/jsapi/arcgis/?v=2.6 替换为 http://localhost/arcgis_js_api/library/2.6/jsapi localhost要改为api所在服务器IP地址
将 http://serverapi.arcgisonline.com/jsapi/arcgis/2.6/js/dojo/dijit/themes/claro/claro.css 替换为
http://localhost/arcgis_js_api/library/2.6/jsapi/js/dojo/dijit/themes/claro/claro.css localhost要改为api所在服务器IP地址 ;
修改后的代码如下: 如果换地方部署,只要将本地的arcgis_js_api 文件夹直接拷贝过去并进行上边第4、5(改为api所在服务器IP地址)步的操作就可以了
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
2 <html>
3 <head>
4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
5 <meta http-equiv="X-UA-Compatible" content="IE=7,IE=9" />
6 <!--The viewport meta tag is used to improve the presentation and behavior of the samples
7 on iOS devices-->
8 <meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no" />
9 <title>Topographic Map</title>
10 <link rel="stylesheet" type="text/css" href="http://localhost/arcgis_js_api/library/2.6/jsapi/js/dojo/dijit/themes/claro/claro.css">
11 <style>
12 html, body
13 {
14 height: 100%;
15 width: 100%;
16 margin: 0;
17 padding: 0;
18 }
19 .esriScalebar
20 {
21 padding: 20px 20px;
22 }
23 #map
24 {
25 padding: 0;
26 }
27 </style>
28 <script type="text/javascript"> var djConfig = { parseOnLoad: true, url: "localhost" };</script>
29 <script type="text/javascript" src="http://localhost/arcgis_js_api/library/2.6/jsapi"></script>
30 <script type="text/javascript">
31 dojo.require("dijit.layout.BorderContainer");
32 dojo.require("dijit.layout.ContentPane");
33 dojo.require("esri.map");
34
35 var map;
36
37 function init() {
38 var initExtent = new esri.geometry.Extent({ "xmin": -122.46, "ymin": 37.73, "xmax": -122.36, "ymax": 37.77, "spatialReference": { "wkid": 4326} });
39 map = new esri.Map("map", {
40 extent: esri.geometry.geographicToWebMercator(initExtent)
41 });
42 //Add the topographic layer to the map. View the ArcGIS Online site for services http://arcgisonline/home/search.html?t=content&f=typekeywords:service 43 var basemap = new esri.layers.ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer");
44 map.addLayer(basemap);
45
46 dojo.connect(map, 'onLoad', function (theMap) {
47 //resize the map when the browser resizes
48 dojo.connect(dijit.byId('map'), 'resize', map, map.resize);
49 });
50 }
51
52 dojo.addOnLoad(init);
53 </script>
54 </head>
55 <body class="claro">
56 <div dojotype="dijit.layout.BorderContainer" design="headline" gutters="false" style="width: 100%;
57 height: 100%; margin: 0;">
58 <div id="map" dojotype="dijit.layout.ContentPane" region="center" style="border: 1px solid #000;
59 padding: 0;">
60 </div>
61 </div>
62 </body>
若想让自己机器的rest服务调用的javascript api也使用离线文件,可修改 C:\inetpub\wwwroot\ArcGIS\rest 下的 rest.config 文件,修改其中的两个节点为:
<ArcGIS>http://locahost/arcgis_js_api/library/2.6/jsapi/</ArcGIS>
<ArcGISCSS>http://locahost/arcgis_js_api/library/2.6/jsapi/js/dojo/dijit/themes/tundra/tundra.css</ArcGISCSS> (localhost改为api所在服务器)
2. 将下载下来的 arcgis_js_v26_api.zip 和 arcgis_js_v26_sdk.zip 分别解压,将各自文件夹下的的 arcgis_js_api 文件夹拷贝到 C:\inetpub\wwwroot 下,因为拷贝的文件夹名称都为arcgis_js_api,因此当拷贝第二个文件夹时选择覆盖即可;
3. 将 C:\inetpub\wwwroot\arcgis_js_api\library\2.6\jsapi\js\esri 下的 esri.js 文件
C:\inetpub\wwwroot\arcgis_js_api\library\2.6\jsapi\js\dojo\dojo 下的 dojo.xd.js 及 dojo.xd.js.uncompressed.js 两个文件
中的 "[HOSTNAME_AND_PATH_TO_JSAPI] 替换为 djConfig.url + "/arcgis_js_api/library/2.6/jsapi/ (注意别少了冒号)
同理将
C:\inetpub\wwwroot\arcgis_js_api\library\2.6\jsapicompact\js\esri 下的 esri.js 文件
C:\inetpub\wwwroot\arcgis_js_api\library\2.6\jsapicompact\js\dojo\dojo 下的 dojo.xd.js 及 dojo.xd.js.uncompressed.js 两个文件
中的 "[HOSTNAME_AND_PATH_TO_JSAPI] 替换为 djConfig.url + "/arcgis_js_api/library/2.6/jsapicompact/ (注意冒号);
4. 在IIS中将 arcgis_js_api 转换为应用程序,并在默认文档中添加:default.ashx ;
5. var djConfig = { parseOnLoad: true, url: "localhost" }; 加一个url属性,url为api所在服务器IP地址
将 http://serverapi.arcgisonline.com/jsapi/arcgis/?v=2.6 替换为 http://localhost/arcgis_js_api/library/2.6/jsapi localhost要改为api所在服务器IP地址
将 http://serverapi.arcgisonline.com/jsapi/arcgis/2.6/js/dojo/dijit/themes/claro/claro.css 替换为
http://localhost/arcgis_js_api/library/2.6/jsapi/js/dojo/dijit/themes/claro/claro.css localhost要改为api所在服务器IP地址 ;
修改后的代码如下: 如果换地方部署,只要将本地的arcgis_js_api 文件夹直接拷贝过去并进行上边第4、5(改为api所在服务器IP地址)步的操作就可以了
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
2 <html>
3 <head>
4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
5 <meta http-equiv="X-UA-Compatible" content="IE=7,IE=9" />
6 <!--The viewport meta tag is used to improve the presentation and behavior of the samples
7 on iOS devices-->
8 <meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no" />
9 <title>Topographic Map</title>
10 <link rel="stylesheet" type="text/css" href="http://localhost/arcgis_js_api/library/2.6/jsapi/js/dojo/dijit/themes/claro/claro.css">
11 <style>
12 html, body
13 {
14 height: 100%;
15 width: 100%;
16 margin: 0;
17 padding: 0;
18 }
19 .esriScalebar
20 {
21 padding: 20px 20px;
22 }
23 #map
24 {
25 padding: 0;
26 }
27 </style>
28 <script type="text/javascript"> var djConfig = { parseOnLoad: true, url: "localhost" };</script>
29 <script type="text/javascript" src="http://localhost/arcgis_js_api/library/2.6/jsapi"></script>
30 <script type="text/javascript">
31 dojo.require("dijit.layout.BorderContainer");
32 dojo.require("dijit.layout.ContentPane");
33 dojo.require("esri.map");
34
35 var map;
36
37 function init() {
38 var initExtent = new esri.geometry.Extent({ "xmin": -122.46, "ymin": 37.73, "xmax": -122.36, "ymax": 37.77, "spatialReference": { "wkid": 4326} });
39 map = new esri.Map("map", {
40 extent: esri.geometry.geographicToWebMercator(initExtent)
41 });
42 //Add the topographic layer to the map. View the ArcGIS Online site for services http://arcgisonline/home/search.html?t=content&f=typekeywords:service 43 var basemap = new esri.layers.ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer");
44 map.addLayer(basemap);
45
46 dojo.connect(map, 'onLoad', function (theMap) {
47 //resize the map when the browser resizes
48 dojo.connect(dijit.byId('map'), 'resize', map, map.resize);
49 });
50 }
51
52 dojo.addOnLoad(init);
53 </script>
54 </head>
55 <body class="claro">
56 <div dojotype="dijit.layout.BorderContainer" design="headline" gutters="false" style="width: 100%;
57 height: 100%; margin: 0;">
58 <div id="map" dojotype="dijit.layout.ContentPane" region="center" style="border: 1px solid #000;
59 padding: 0;">
60 </div>
61 </div>
62 </body>
若想让自己机器的rest服务调用的javascript api也使用离线文件,可修改 C:\inetpub\wwwroot\ArcGIS\rest 下的 rest.config 文件,修改其中的两个节点为:
<ArcGIS>http://locahost/arcgis_js_api/library/2.6/jsapi/</ArcGIS>
<ArcGISCSS>http://locahost/arcgis_js_api/library/2.6/jsapi/js/dojo/dijit/themes/tundra/tundra.css</ArcGISCSS> (localhost改为api所在服务器)
相关文章推荐
- (转)ArcGIS API for Javascript 2.X 离线部署(以2.6为例)
- ArcGIS API for Javascript 2.X 离线部署(以2.6为例)
- 部署本地(离线)arcgis server api for javascript
- ArcGIS Server for JavaScript api 3.3 离线部署
- 将ArcGIS API for javascript的离线包部署在Tomcat下
- ArcGIS API For Javascript之离线部署
- 离线部署arcgis api for javascript
- ArcGIS API for Javascript在tomcat下的离线部署--基于3.9版本
- ArcGIS Server for JavaScript api 3.3 离线部署
- arcgis api for javascript 离线部署后,加载高德地图 本地加载测试已成功
- ArcGIS API for JavaScript离线部署
- ArcGIS API for JavaScript开发教程系列(四)之离线部署与跨域问题
- 离线部署ArcGIS API for Javascript
- Arcgis API for Javascript 3.5最新版离线本地部署方法-中文
- ArcGIS API for Javascript 2.X 离线安排(以2.6为例)
- ArcGIS API for JavaScript 3.17/4.0离线包本地部署安装
- ArcGis API for JavaScript学习——离线部署API
- ArcGIS Server for JavaScript api 3.3 离线部署
- ArcGIS API for Javascript离线部署 (最新版本jsapi3.9)
- ArcGIS API for Javascript在tomcat下的离线部署--基于3.9版本