0

有没有办法在 JavaScript中对Places Library的请求进行批处理?我看过这个页面,所以我收集到它是可能的,至少,我只是不确定它如何与 Places API 一起工作。

我需要为我在谷歌地图上找到的每个地方运行一个请求(这会导致很多 OVER_QUERY_LIMIT 异常)。我已经考虑过将请求排队并间隔一秒钟运行它们,但是如果用户有数百个位置排队,那么如果用户抢先关闭页面,就会丢失相当多的结果。

在这种情况下,如果可能的话,我宁愿不将处理推迟到服务器。

4

2 回答 2

0

一些 Google 支持批处理,并且通过API 客户端库(至少在 PHP 中)很容易实现。不幸的是,Places 不是受支持的 API 之一。

但这在您的情况下并不重要,因为即使您对它们进行批处理,它们仍然都计入您的查询限制。

于 2014-01-20T23:46:36.920 回答
0

好吧,这是我在 Javascript 中的解决方案:

var intId = setInterval(function() {
    try {
        service.getDetails(place, getMorePlaceDetails);
        clearInterval(intId);
    } catch(e) {
        console.info("Could not get detailed information about "+place.name+"; retrying in 3...");
    }
}, 3000);

每个在尝试获取更多详细信息时引发异常的地方都会在 3 秒内重试。

于 2013-07-25T00:07:39.447 回答