gpt4 book ai didi

google-maps - 收到来自 google maps API v3 的响应状态 QUERY_OVER_LIMIT

转载 作者:行者123 更新时间:2023-12-04 05:52:36 25 4
gpt4 key购买 nike

我在我的应用程序中使用你的 api 来实现几个功能,即,
-- 获取前往目的地的路线
-- 获取到多个位置的距离
- 通过在 map 上使用标记定位来接收位置地址

申请摘要(Local-Deals-Now)

该应用程序是一个免费应用程序,允许位于澳大利亚的本地企业发布与其业务相关的优惠/交易。用户可以创建一个企业帐户(免费)并提供他们的企业位置(使用谷歌地图 api)并按日期和时间向系统添加优惠/交易。然后,公共(public)用户/消费者可以查看这些优惠(或按距离、位置、日期、关键字等搜索:-.... 从当前用户位置到优惠的距离是使用 distancematrix api 计算的)。

上述应用程序目前处于开发阶段,可通过 http://www.chuli.fclhosting.com/ 访问.面临的问题是使用距离矩阵 API 计算从当前登录用户位置到企业的距离。我在服务器端使用 API 如下

$curl = curl_init();
$uri = "http://maps.googleapis.com/maps/api/distancematrix/json?origins=".$originString."&destinations=".$destinationsString."&mode=driving&language&sensor=false";
die($uri);
$options = array(
CURLOPT_URL => $uri,
CURLOPT_HTTPHEADER => array(),
CURLOPT_COOKIE => '',
CURLOPT_RETURNTRANSFER => true
);
curl_setopt_array($curl, $options);
$responseBody = curl_exec($curl);
$responseHeaders = curl_getinfo($curl);
$data = $responseBody;
$responseContentType = $responseHeaders['content_type'];

if ((strpos($responseContentType, 'json') !== false) || (substr(html_entity_decode(trim($data)), 0, 1) == "{")) {
$jsonData = json_decode($data, true);
if (!is_null($jsonData)) {
$data =$jsonData;
}
}

for ($i = 0; $i < count($data['origin_addresses']); $i++) {
for ($j = 0; $j < count($data['destination_addresses']); $j++) {

$from = $data['origin_addresses'][$i];
$to = $data['destination_addresses'][$j];
if($data['rows'][$i]['elements'][$j]['status']=="OK" && $data['rows'][$i]['elements'][$j]['distance']['value']<= ($distance*1000)) {
$businessDistanceArray[$businesses[$j]->getId()] = $data['rows'][$i]['elements'][$j]['distance']['text'];
} else {
$businessDistanceArray[$businesses[$j]->getId()] = sfConfig::get('app_offer_not_applicable');
}

}
}

从最近开始,我开始收到一个警告/错误说明 OVER_QUERY_LIMIT。在谷歌搜索问题后(引用: https://developers.google.com/maps/documentation/javascript/usage)我已经掌握了,如果出现上述问题
--每天的请求限制超过 25 000 次 map 加载
或者
--每秒发送太多请求

据我所知,该申请不符合上述任何一项要求,但仍收到警告。请让我知道我可以针对这个问题做些什么来克服这个错误

我必须购买营业执照吗
或者
由于目前该应用程序是非盈利应用程序,我应该申请 Google Earth Outeach Grant
或者
继续不做任何改动

这是发送的示例请求:

http://maps.google.com/maps/api/distancematrix/json?origins=-25.198526444487587,133.20029780312507&destinations=-33.767636351789754,147.41606950000005|-33.905755787445024,151.15402221679688|-32.02195365825273,115.90862329062497|-37.79805567326585,145.01495173583987|-36.8839206402564,144.20859858437507|-31.362071510290537,117.42054612812501|-23.609959,143.72078599999998|-37.819317,145.12404889999993|-37.8186394,145.12360620000004|-37.816506,145.11867699999993|-37.815524,145.12131499999998|-30.708111,134.56642599999998&mode=driving&language&sensor=false

请查看上面给出的信息。我们将非常感谢您的反馈

提前致谢

最佳答案

正如莫勒博士所说,有两种不同的限制。您超过了允许在 24 小时内查询 2500 个元素的每日限制。发生这种情况时,您将收到连续的 OVER_QUERY_LIMIT 错误,直到该 24 小时时间窗口到期并且您的配额刷新。

另一个需要注意的限制是每 10 秒 100 个元素的短期限制。当您超过此限制时,您将在几秒钟内遇到 OVER_QUERY_LIMIT 错误(即直到 10 秒窗口结束),然后您将能够再次使用该服务。

如果这是一个面向用户的应用程序,它加载 Google Maps JavaScript API 并作为某些用户操作的结果执行这些距离矩阵查询,则 JavaScript Distance Matrix Service绝对值得探索。 JavaScript 应用程序的限制分布在您的网站用户之间,而不是后端服务器。

关于google-maps - 收到来自 google maps API v3 的响应状态 QUERY_OVER_LIMIT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9905140/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com