直接 REST API 查询

这种集成模式依赖外部或远程应用程序或进程,向由 ArcGIS 系统托管的特定 REST API 发送请求。 在这种情况下,主要业务系统可能包含依靠对 ArcGIS 服务端点进行特定调用的工作流,例如:

  • 将用户提供的地址发送给地理编码服务以返回计算的位置
  • 向要素服务发送查询以识别某点所处边界
  • 查询几何服务以比较两个重叠区域并返回交叉点

这些请求可以通过用户工作流触发,由其客户端应用程序或体验直接向 ArcGIS 服务发送请求,或者通过后端或系统间工作流触发,其中某种自动化或调度任务作为数据处理工作流的一部分发送请求。

这种集成模式的示例可能包括以下技术方法:

  • 前端 JavaScript 应用程序,使用用户的输入地址,向 ArcGIS World Geocoding Service 发送请求,并将所得位置保存到业务系统中

  • 用于包裹配送的移动应用程序,根据用户当前位置每 30 秒通过求解路径请求重新求解到目的地的路线

  • 公民参与或规划的应用程序会先请求用户位置,然后查询一组标准要素图层以获取用户所属行政区或区的信息,最后通过界面向用户展示这些信息

在这些模式中,共同点是远程应用程序会直接向 ArcGIS REST 端点发送查询请求。 这种模式在与 ArcGIS REST API 进行更深度的交互时,通常会采用 API 密钥应用程序身份验证,而非更常见的用户身份验证模式。

ArcGIS 中的集成模式

ArcGIS Online、ArcGIS Enterprise 和 ArcGIS Location Platform 均可用于创建适用于此模式的 Web 服务。 ArcGIS Enterprise 可以创建 ArcGIS Online 或 ArcGIS Location Platform 中无法提供的其他服务类型,详情请参见选择架构组件

功能 ArcGIS Online ArcGIS Enterprise ArcGIS Location Platform ArcGIS Pro
直接 REST API 集成 N/A

完全支持 部分支持


最佳做法

  • 直接与 REST 集成时,正确使用身份验证非常重要。 其中许多集成都使用 ArcGIS API 密钥(其权限范围有限)向这些服务发送请求。 根据服务托管在 ArcGIS Online、ArcGIS Enterprise 还是 ArcGIS Location Platform 上,其商业模型和 API 密钥的使用方式可能会有所不同,详情请参阅产品文档

  • 对于能够使用 JavaScript 的集成,如 NodeJS 进程或未使用 ArcGIS Maps SDK for JavaScript 构建的前端 JavaScript 应用程序,ArcGIS REST JS 库为与 ArcGIS REST 服务交互提供了广泛的功能。

  • 对于能够使用 Python 模块的集成,可以使用 ArcGIS API for Python,该 API 提供了丰富的功能,可用于处理所有类型的 ArcGIS REST 服务。

Top