谷歌地理编码连接器
  • 03 Nov 2023
  • 1 分钟阅读
  • 贡献者

谷歌地理编码连接器


文章摘要

与谷歌地理编码 API 集成

简介

地理编码(Geocoding)是将地址转换成用户可以用来在地图上放置标记或定位地图的过程。同样,反向地理编码也是将地理坐标转换为人类可读地址的过程。该连接器的目标是使用 HTTP连接器将谷歌的地理编码 API 与 Tulip 集成,并为客户提供可导入其实例的开箱即用的地理编码连接器。

目的

  1. 我们将重点介绍不同的 HTTP 连接器功能,这些功能可通过 HTTP 调用谷歌的 Geocode API 端点来获取地址的详细信息,从而获得可用于各种用例的坐标。通过传递坐标和获取地址的所有信息来使用反向地理编码,同时展示如何在这些 API 调用中应用过滤器。
  2. 此外,我们还将使用 Google 的距离矩阵 API 来展示如何获取两个地址或通过 Geocoding API 获取的坐标之间的距离和旅行时间信息。

API 文档

  1. 谷歌地理编码 API 文档
  2. 谷歌距离矩阵 API 文档

前提条件

  1. 在 Google 的云控制台创建一个账户,并为 Google Geocode 配置 API 密钥。更多信息请参阅 Google 的 API 文档。
  2. 生成的 API 密钥将在 Geocode 和距离矩阵的所有连接器功能中用作查询参数。用户需要确保通过 Tulip 的输入提取器传递 API 密钥,或在所有连接器函数中键入 API 密钥。

Tulip 连接详情

需要在 Tulip 连接器上配置以下信息。

  1. 运行于:云连接器主机
  2. 主机:maps.googleapis.com
  3. 端口:443
  4. TLS:Yes
  5. 无需验证:每次调用使用 API 密钥即可。

连接器功能

获取地址信息

用途

  1. 用户可将搜索查询作为输入地址,Tulip 将获取有关特定地址的所有重要信息及其等效纬度和经度坐标,这些信息可进一步用作地图上的标记或其他可能的用例。
  2. 从 Geocode 提取的信息可在 Tulip 应用程序、Tulip 表或 Tulip 变量中进一步使用,而 Tulip 表或 Tulip 变量将被输送到作为 Geocode Connector 一部分的其他连接器功能中。

端点

  1. 对端点的 HTTP GET 调用 -https://maps.googleapis.com:443/maps/api/geocode/json

所需输入

以下是需要传递的查询参数

  1. API 密钥
  2. 地址 - 搜索查询的地址

所需输出提取器

  1. 完整地址:谷歌返回的格式化完整地址。
  2. 纬度:用于地图标记或在距离矩阵 API 中传递时使用的坐标。
  3. 经度用于地图标记或通过距离矩阵 API 使用的坐标。
  4. 位置类型:所搜索位置类型的指示符

通过区域获取地址信息

用途

  1. 该功能与上述功能类似,但可在连接器功能中传递额外的查询参数。很多时候,一个地址可能位于多个国家,为了得到想要的结果,用户可以在连接器函数的区域参数中传递国家代码,以确保返回的结果来自感兴趣的国家。
  2. 地区是用户可以用来过滤结果的查询参数之一,但谷歌还提供了许多其他查询参数,可用于调用 Geocode API。更多相关信息,请参阅 API 文档。

端点和标头

  1. HTTP GET调用端点https://maps.googleapis.com:443/maps/api/geocode/json

所需输入

以下是需要传递的查询参数

  1. API 密钥
  2. 地址 - 用于搜索查询的地址
  3. 地区 - 感兴趣的国家

所需输出提取器

  1. 完整地址:谷歌返回的格式化完整地址。
  2. 纬度:用于地图标记或在距离矩阵 API 中传递的坐标。
  3. 经度用于地图标记或通过距离矩阵 API 使用的坐标。
  4. 位置类型:搜索位置类型的指示符

反向地理编码

用途

  1. 反向地理编码是将地理坐标转换为人类可读地址的过程。
  2. 此连接器功能将坐标作为输入,并返回人类可读的地址和所有其他详细信息,如 API 返回的各种地址组件。

端点和标头

  1. HTTP GET 调用端点https://maps.googleapis.com:443/maps/api/geocode/json

所需输入

以下是需要传递的查询参数

  1. API 密钥
  2. 纬度经度:用户需要输入以逗号分隔的坐标。

所需输出提取器

  1. 完整地址:谷歌返回的格式化完整地址。
  2. 位置类型:搜索地点类型的指示符

使用过滤器进行反向地理编码

用途

  1. 该连接器函数的使用方法与上述函数完全相同,但 Geocode API 会根据所传递的位置坐标返回多行结果。该函数展示了如何利用应用程序接口提供的各种查询参数,过滤出感兴趣的结果。

端点和标头

  1. 对端点的 HTTP GET 调用https://maps.googleapis.com:443/maps/api/geocode/json

所需输入

以下是需要传递的查询参数

  1. API 密钥
  2. 纬度经度:用户需要输入用逗号分隔的坐标。
  3. 位置类型:一个查询参数,用于指示 API 返回的结果是精确地址还是近似地址。
  4. 结果类型:一个查询参数,用于指示 API 返回的结果是街道地址,还是 API 文档中提供的其他选项。

所需的输出提取器

  1. 完整地址:Google 返回的格式化完整地址。
  2. 地点类型:搜索地点类型的指示符

获取距离和时间

用途

  1. 此函数通过 HTTP 调用距离矩阵 API,提供起点和终点矩阵的旅行距离和时间。该 API 根据谷歌地图 API 计算出的起点和终点之间的推荐路线返回信息。
  2. 利用地理编码 API 返回的完整地址或坐标来获取两点之间的旅行距离和时间。

端点和标头

  1. HTTP GET 调用端点https://maps.googleapis.com:443//maps/api/distancematrix/json

所需输入

以下是需要传递的查询参数

  1. API 密钥
  2. 原点 - 起始地址/坐标
  3. 目的地 - 终止地址/坐标
  4. 单位 - 默认为公制,也可使用英制。

所需输出

  1. 距离:2 个输入地址之间的距离
  2. 持续时间:2 个输入地址之间的路程所需时间。

使用参数获取距离和持续时间

使用目的

  1. 该函数的使用方式与之前描述的连接器函数完全相同,但我们需要通过额外的查询参数来获取结果。
  2. 当距离矩阵 API 返回两个地点之间的持续时间和距离结果时,驾驶是默认的交通方式。如果需要使用不同的交通方式(如铁路、地铁或步行)来获取结果,我们可以利用谷歌的附加查询参数来获取所需的数据。

端点和标头

  1. HTTP GET 调用端点https://maps.googleapis.com:443//maps/api/distancematrix/json

所需输入

以下是需要传递的查询参数

  1. API 密钥
  2. 原点 - 起始地址/坐标
  3. 目的地 - 终止地址/坐标
  4. 单位 - 默认为公制,也可使用英制。
  5. 旅行模式:指定除默认驾驶模式以外的其他模式
  6. 中转模式:母模式中的一种子旅行模式。(公交模式下的铁路/地铁)

所需输出

  1. 距离: 2 个输入地址之间的距离
  2. 持续时间:2 个输入地址之间的旅行时间。

本文对您有帮助吗?