访问以下链接时: http://maps.googleapis.com/maps/api/geocode/json
我收到回复:
{
"error_message" : "You have exceeded your daily request quota for this API.",
"results" : [],
"status" : "OVER_QUERY_LIMIT"
}
Google Developers Console中只列出了两个API - 两个都报告了它们的使用限制。
地理编码服务是否包含在其中任何一个中,如果没有,是否有办法检查用途或付费升级?
Maps API v3#个请求 每日配额:25k 28天总计:2.37k
Static Maps API请求数 每日配额:25k 28天总计:45.21k
提前致谢, 乔恩
答案 0 :(得分:24)
感谢luke_mclachlan的修复。
网址缺少API密钥的参数,例如
https://maps.googleapis.com/maps/api/geocode/json?key=AbCdEfGhIjKlMnOpQrStUvWxYz&address=Dallas&sensor=true
抛出我们的是,如果没有API密钥,我们在凌晨2:30左右就会出现一个下限,这在考试中没有出现。
使用的API密钥可在此处的Google Developers Console中找到: https://console.developers.google.com/project
单击您的项目名称 然后查看左侧菜单并单击"凭据"在" API& AUTH" 价值" API KEY"所有用法都是一样的
乔恩
答案 1 :(得分:2)
缺少参数键。
https://maps.googleapis.com/maps/api/geocode/json?key=AbCdEfGhIjKlMnOpQrStUvWxYz&address=Dallas&sensor=true
需要添加 key=AbCdEfGhIjKlMnOpQrStUvWxYz
。
答案 2 :(得分:0)
不确定这是否与缺少关键查询参数有关。将&language=GB®ion=UK
替换为我的应用程序以代替查询&language=GB®ion=uk
时,我看到相同的误导性API响应。这是基于服务器的查询,API访问由Google存储的API凭据授权。 API返回:
“您已经超出了该API的每日请求配额。我们建议您在Google Developers Console上注册密钥”
响应似乎是格式错误的查询字符串的通用响应,而不是其他任何key
参数或其他方式。
答案 3 :(得分:0)
就我而言,我在?address=#202, Hollywood park
中传递了'#'字符。我从地址api中删除了#。可能是Google的api打破了空格字符,尤其是#
答案 4 :(得分:0)
ini_set('allow_url_fopen', 'on');
//ini_set('allow_url_fopen', '1');
$address=urlencode($address);
$address = str_replace(" ", "+", $address);
$json = file_get_contents("https://maps.google.com/maps/api/geocode/json?key=AIzaSyDq-gfJDoytQE6gj0iHXEy4IZQhgLS70-8&address=$address&sensor=true");
$json = json_decode($json);
$lat = $json->{'results'}[0]->{'geometry'}->{'location'}->{'lat'};
$lng = $json->{'results'}[0]->{'geometry'}->{'location'}->{'lng'};