【问题标题】:Google geocoding API (City => long, lat)Google 地理编码 API(City => long, lat)
【发布时间】:2010-10-25 00:28:28
【问题描述】:

Google 是否提供 RESTful API,我可以在其中传递城市名称(或 zip)并返回经度和纬度。

我知道如何使用 Google Maps API 来做到这一点,但是我真的不希望我的用户仅仅为了对位置进行地理编码而下载庞大的 200k Google Maps API。

有人知道基于 URL (REST) 的城市/zip 到经度和纬度 API 吗?

由于对该信息进行地理编码会启动多个其他流程,因此执行此第一步对于使其快速执行至关重要 b/c 这是目前使用 Google Maps API b/c 的巨大下载和 JavaScript 加载的瓶颈.

【问题讨论】:

  • 只要我今天已经指出了这一点 - 请注意,您在技术上是 not permitted 使用 Google 的地理编码器,除非您将在 Google 地图上显示数据。雅虎也是如此。不过,我不知道他们是否真的会检查你。
  • @ChrisB:雅虎不再是这种情况。
  • 实际上,Yahoo 的 PlaceFinder 许可证规定您不能存储来自 API 的地理编码或其他数据以供将来使用。

标签: geolocation google-api geocoding


【解决方案1】:

Yahoo PlaceFinder 是雅虎提供的一项新服务!提供将地址(包括城市名称)转换为纬度/经度对的服务。该服务还能够执行相反的操作(将坐标转换为地址)。

与 Google 的 Geocoding API 不同,Yahoo PlaceFinder 的 TOS 不禁止在其地图 API 之外使用数据。

【讨论】:

  • 目前,Yahoo 要求如果您每天发出的请求超过 10K,请与他们联系。
  • 这是关闭的,现在是 geoboss。不确定您是否可以在不付费的情况下获得这项服务。
  • Geoboss 存储规则: b:您不得: vi。存储来自服务的任何结果(例如,地图图像、地图数据或地理编码位置信息),但 (a) 临时缓存结果以提高您的产品的性能除外,但仅限于合理必要的时间;或 (b) 支持您的产品的核心业务功能。如果您存储或缓存结果的目的或效果是避免、减少或扭曲查询次数或欠雅虎的查询费用,则您不得使用这些例外情况。
【解决方案2】:

您可以使用 geonames.org 网络服务(或下载服务器)

http://www.geonames.org/export/reverse-geocoding.html

【讨论】:

    【解决方案3】:

    另外请记住,如果您使用直接 HTTP 调用方法的流量很大,您可能会超出当天的配额。 Google 根据 IP 地址限制使用,因此使用客户端代码将大大增加您每天可以进行的地理代码查找的数量,因为它们将与用户的计算机而不是您的服务器相关联。

    【讨论】:

    • Premier API 对 Geocode 查找的次数没有任何限制。
    • @Luke:Google Maps API Premier 的用户每天最多可以执行 100,000 个请求。 code.google.com/apis/maps/documentation/geocoding/#Limits
    • @Shree - 我的立场是正确的 =) 不知道当我看的时候是否有限制......(有可能,我只是错过了)
    【解决方案4】:
    $.get("http://ipinfo.io", function(response) {
        console.log(response.city, response.country);
    }, "jsonp");
    

    这是一个更详细的 JSFiddle 示例,它还打印出完整的响应信息,因此您可以查看所有可用的详细信息:http://jsfiddle.net/zK5FN/2/

    【讨论】:

      猜你喜欢
      • 2018-01-23
      • 2019-05-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-06
      • 1970-01-01
      • 2023-03-10
      • 1970-01-01
      相关资源
      最近更新 更多