我已经设置了一个小的PHP脚本,通过CURL上的Google地理编码API验证用户提交的地址信息。
https://developers.google.com/maps/documentation/geocoding/#GeocodingRequests
使用每日IP获得的正常配额一切正常。但是,每当我尝试使用API密钥进行身份验证时,都会收到REQUEST_DENIED响应。
成功回复
http://maps.googleapis.com/maps/api/geocode/json?sensor=false&address=Agadir
请求被拒绝
http://maps.googleapis.com/maps/api/geocode/json?sensor=false&address=Agadir&key={my_api_key}
我已经设置了我的项目以允许访问该服务(Google Maps API v3),而且我肯定远远没有接近每日配额。我也100%确定我的API密钥是正确的。
有谁知道API密钥是否需要一些时间来传播?
答案 0 :(得分:2)
您需要base64_decode()
API密钥,然后对网址进行签名。 Working code from Google
答案 1 :(得分:0)
看起来地理编码请求不需要密钥。我刚刚在浏览器中打开了这个链接:http://maps.googleapis.com/maps/api/geocode/json?sensor=false&address=Agadir并获得了有效的JSON。没有指定密钥。您应该尝试使用任何免费的CGI代理或其他机器,并尝试首先使用您的浏览器访问此URL。
答案 2 :(得分:0)
请求拒绝请求使用https而不是http,因为Google Api需要通过SSL提出请求。