ArcgisForJS如何访问Arcgis Server?

文章目录

0.引言

ArcGIS API for JavaScript 是一个用于在Web和移动应用程序中创建交互式地图和地理空间分析应用的库。它支持从 ArcGIS Server 加载数据。本文先介绍创建地理数据,然后发布为ArcGIS Server数据,最后利用ArcGIS API for JavaScript 加载ArcGIS Server数据。

1.准备ArcGIS相关工具

安装ArcGIS_Desktop,参考:ArcGIS10.2保姆式安装教程,超详细;附安装包

安装ArcGIS_Server,参考:ArcGIS server 10.2安装教程详细版

安装ArcGIS_SDE,参考:arcgis10.2 SDE (sqlserver)安装及使用

安装完成相关工具后,添加数据库连接,并添加ArcGIS Server,如下:

  

2.创建含有ArcSDE地理数据库的MXD文件

(1)创建MXD文件并保存

  

  

(2)添加要素集

  

填写要素集名称。

  

设置地理坐标系。

  

设置垂直坐标系。

  

  

  

(3)添加一个线要素

  

  

  

  

  

(4)编辑线要素并保存

  

  

(5)注册要素集版本

注册要素时,需要将ArcSDE要素移除TOC页,以解除要素占用。

  

对要素集注册版本。

  

  

添加要素:

  

注:有时注册会提示锁定,如下:

  

解决方案如下:

  

  

  

完成以上操作后,即可正常进行要素注册或删除等操作。

3.注册ArcSDE地理数据库

  

  

  

以上②步添加以下内容。

  

  

4.发布数据到Arcgis Server

  

  

  

  

  

  

  

  

有时可能出现以下结果:

  

服务发布结果提示需要手动启动server服务,以下进行操作。

Win+Q打开搜索"服务",找到"组件服务"并打开。

  

  

  

  

  

发布的服务可以在本地查看,如下:

  

发布的服务可以在server端查看,如下:

  

  

5.ArcgisForJS访问ArcGIS Server数据

启用ArcGIS Server地图服务

  

ArcgisForJS访问以下的REST URL:http://localhost:6080/arcgis/rest/services/TEST/测试server/MapServer

  

  

ArcgisForJS加载Arcgis Server发布的数据实现代码:

csharp 复制代码
<!DOCTYPE html>
<html>  
  
<head>  
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
    <title>Create Map</title>  
    <link rel="stylesheet" href="http://localhost:8099/arcgis_js_api/javascript/4.28/esri/themes/light/main.css" />  
    <script src="http://localhost:8099/arcgis_js_api/javascript/4.28/init.js"></script>  
    <style>  
        html,  
        body,  
        #viewDiv {  
            padding: 0;  
            margin: 0;  
            height: 100%;  
            width: 100%;  
        }  
    </style>  
  
    <script type="text/javascript">  
        require(["esri/Map",  
            "esri/views/MapView",  
            "esri/config",  
            "esri/layers/MapImageLayer"  
        ], function (  
            Map,  
            MapView,  
            esriConfig,  
            MapImageLayer  
        ) {  
            let layer = new MapImageLayer({  
                url:"http://localhost:6080/arcgis/rest/services/TEST/测试server/MapServer"  
            });  
            const map = new Map({  
                basemap: "topo-vector"  
            });  
            map.add(layer);  
            const view = new MapView({  
                container: "viewDiv", // Reference to the DOM node that will contain the view  
                map: map, // References the map object created in step 3  
                zoom: 3,  
                center: [0, 45]  
            });  
        });  
    </script>  
</head>  
  
<body>  
    <div id="viewDiv"></div>  
</body>  
  
</html>

实现结果

  

参考资料:

1 juechen333. ArcGIS10.2保姆式安装教程,超详细;附安装包; 2023-01-15 accessed 2024-02-21.

2 GISer苍如狗. Arcgis Server安装教程; 2021-05-01 accessed 2024-02-21.

3 孙霸天. ArcGIS server 10.2安装教程详细版; 2022-03-15 accessed 2024-02-21.

4 一入GIS深似海. 不一样的前端,JavaScript之arcgis api教程; 2020-11-02 accessed 2024-02-21.

5 wsqplsh. arcgisserver发布服务详细流程; 2016-01-12 accessed 2024-02-21.

6 老靳的WebGIS. 【完整的WebGIS教程】6.1 使用ArcGIS Server发布要素服务; 2023-08-07 accessed 2024-02-21.

7 jxufeng. arcgis10.2 SDE (sqlserver)安装及使用; 2014-04-16 accessed 2024-02-20.

8 2015在路上. ArcGIS Server10.2服务启动不了之http://localhost:6080/arcgis/manager无法打开之arcMap 无法打开6080admin问题解决之路; 2016-10-21 accessed 2024-02-21.

9 马克玲. 发布服务成功后arcgis services directory目录中无法显示服务列表; 2014-07-15 accessed 2024-02-21.

10 佛系小泉. ArcGIS Server发布服务及一些发布常见问题解决; 2023-07-31 accessed 2024-02-21.

11 芒小李. Failed to register as versioned.Lock request conflicts with an established lock; 2019-01-23 accessed 2024-02-21.

12 xiaoxingdi. 分别使用arcgis for js 4.x和3.x加载本地server地图; 2019-04-12 accessed 2024-02-21.

13 GIS开发者. ArcGIS API for JS4.7加载ArcGIS Server发布的REST和WMS地图服务; 2018-07-18 accessed 2024-02-21.

14 易智瑞. ArcGIS API For Javascript入门; 2020-09-15 accessed 2024-02-21.

相关推荐
沙漠之主5 小时前
C++编程教学设计资料:从入门到实战的完整课程方案
java·前端·c++
hasty5 小时前
不上传新包,也能改变用户拿到的版本:npm dist-tag 的 OIDC 权限治理
前端·npm·node.js
Csvn6 小时前
diff 算法(虚拟 DOM Reconciliation)
前端
前端snow7 小时前
ai agent --- 文件存储
前端
Frag0ut7 小时前
Chrome四大版本获取及共存指南:Stable/Beta/Dev/Canary
前端·chrome·浏览器·dev·beta·canary·共存版
IT_陈寒8 小时前
SpringBoot自动配置坑了我一把,原来是这样绕过去的
前端·人工智能·后端
广州华水科技8 小时前
单北斗GNSS变形监测在大坝安全监测中的应用与优势
前端
zeng不错9 小时前
B站 173 个投稿活动看到眼瞎?我写了个扩展,主打一个精准打击
前端
Latchh9 小时前
前端导出的JPEG红字发糊,质量要拉到100才清楚
前端·图像处理·人工智能·计算机视觉
默_笙9 小时前
🚦 请三个 AI 考官给 RAG 打分:量化评估实战(下)
前端·javascript