我有一个 socket.io,它每 15-20 毫秒 ping 一个新地址。对于这个地址,我必须获取经纬度并将标记放在谷歌地图中。所以在这 15-20 毫秒内(如果不是,可能在 50-60 毫秒内)我必须得到 GeoLocation。目前我正在使用geocoder = new google.maps.Geocoder();
然后geocoder.geocode({address: data}, myFunction(){});
但是这个用于地图的 API 非常慢。它在 400-500 毫秒内返回 GeoLocation,这使我的中间地址请求为空。我需要一个非常快的 API。
作为参考,下面是 socket.io 的代码片段:
geocoder = new google.maps.Geocoder();
var socket = io.connect('http://localhost');
socket.on('new_address', function (data) {
//Gets called everytime a new request for GeoLocation comes
geocoder.geocode({address: data}, placeMarker);
});
var placeMarker = function(){
//Add Marker to GoogleMaps
};