2

我正在尝试通过我的 rails 应用程序使用 Google Geocoding API 对一批大约 400 个地址进行地理编码。

在我的一个控制器中,我有这些行

require "net/http"
require "uri"
uri = URI.parse("http://maps.googleapis.com/maps/api/geocode/json?")
response = Net::HTTP.post_form(uri, {"address" => '5032-forbes-ave', 'sensor' => 'false'})

但我总是从中得到 ""status": "REQUEST_DENIED" 。

有谁知道我为什么会得到这个,或者是否有办法可以准确地看到正在发送的 HTTP 请求,以便我可以尝试调试它?

更新:这是我试图提出的请求,如果我从浏览器执行此操作,我会从 api 获得正常响应:http ://maps.googleapis.com/maps/api/geocode/json?address=5032 -福布斯大道&传感器=假

4

1 回答 1

3

您正在发布请求,但在您的浏览器中您使用的是 GET。

所以这个工作完美:

uri = URI.parse("http://maps.googleapis.com/maps/api/geocode/json?address=5032-forbes-ave&sensor=false")
response = Net::HTTP.get(uri)

响应是字符串本身,它包含一些 JSON(我不是 Google API 的专家)

于 2010-09-26T21:54:57.290 回答