如何请求谷歌地理位置API


How to make a request of Google Geolocation API?

我认为使用谷歌地理位置请求与使用谷歌距离矩阵相同,但我错了。

所以,我不明白它是如何工作的。我尝试将此网址放在地址栏中

https://www.googleapis.com/geolocation/v1/geolocate?key=MyAPIKey

我只得到Not found回应。我期待这样的回应:

{  
   "location": {
      "lat": 51.0,
      "lng": -0.1
   },
   "accuracy": 1200.4
}

然后我读到json中有一些请求正文信息也必须在请求中发送,但我不知道如何将它们包含在请求中。我想用 php 来做。请提供任何帮助,我们将不胜感激。谢谢。

这是因为您将其称为GET请求,因此API明确指出它必须作为POST请求进行。然后,您将获得期望看到的 JSON。

你可以通过使用原生 php http streamcurl 来做到这一点,这里有一篇文章解释了这两种方法 POST 数据到 PHP 中的 URL.

在您的情况下,不需要$datacurl_setopt( $ch, CURLOPT_POSTFIELDS, $myvars);行,因为您不需要发送任何参数。