我的GeoLocation似乎不使用Cache

时间:2017-02-01 00:27:09

标签: google-chrome-extension geolocation

我看到很多人抱怨GeoLocation如何使用缓存....但我的问题是我的似乎没有使用缓存。 My Weather API需要坐标才能被调用,并且一旦我的GeoLocation获得其坐标,就会触发调用API的函数。结果显示在HTML页面上,如果我快速打开一堆它几乎是即时的,但在10秒之后它会停止使用缓存。我将maximumAge设置为5400000,1.5小时,这似乎不起作用。如果您有任何想法,请告诉我!非常感谢提前。

如果您有兴趣,请参阅我的地理位置代码:

navigator.geolocation.getCurrentPosition(successFunction, errorFunction, geo_options);

function successFunction(position) {
    lat = position.coords.latitude;
    long = position.coords.longitude;
    console.log("lat:" + lat + " long:" + long);
    callWeather(); // function that contains API call and Jquery to append
                  //the HTML file
}

function errorFunction(position) {
  console.log('Error with Position!');
}

var geo_options = {
  maximumAge: 54000000, //wait an hour and a half before updating position, 
                        //allows for quicker calls to weather api?
  timeout: 10000 // wait 10 seconds before giving up on position
};

1 个答案:

答案 0 :(得分:0)

我添加了这一行来找出滞后的确切位置 -

console.log("called position:"+d.getSeconds()+":"+ d.getMilliseconds());

发现是我的天气api阻碍了HTML显示:

  来自日志的

(以分钟/秒/毫秒为单位):

content.js:232 called position: 48:36:915
content.js:329 called weather: 48:39:150

我使用DarkSky作为我的天气API。我想知道如何加快速度......