html geolocation: Unknown error acquiring position

2019-06-23 18:36发布

I am trying to use HTML geolocation to get my position. Funny thing is, it was working brilliantly until some seemingly random point in the day when it just stopped working. Now all I get is the error callback with a message:

Unknown error acquiring position

This happened on the day I first started to develop the app. It is a web app built in Node/Express. The browser I am using is Firefox v53 64-bit.

Location is allowed, and I have also tried a fix that I found online which involves going to about:config and changing geo.wifi.uri from:

https://www.googleapis.com/geolocation/v1/geolocate?key=%GOOGLE_API_KEY%

to

https://www.googleapis.com/geolocation/v1/geolocate?key=test

This did not work for me.

This does however work on my phones Firefox app, but not the Google Chrome app.

Heres an example code snippet:

    const geo = navigator.geolocation;
    geo.getCurrentPosition(success, failure);

    function success(position) {
        lat = position.coords.latitude;
        lng = position.coords.longitude;
        $('#coords').val(lat + ',' + lng);
        mapView.setCenter(ol.proj.fromLonLat([lng, lat]));
    }

    function failure(error) {
        console.log(error.message);
    }

The full page: https://github.com/ThriceGood/Spots/blob/master/views/index.html

Can anyone shed some light on this issue?

1条回答
Ridiculous、
2楼-- · 2019-06-23 19:03

What worked for me was changing geo.wifi.uri to:

https://location.services.mozilla.com/v1/geolocate?key=test

As per this page: navigator.geolocation.getCurrentPosition do not work in Firefox 30.0

查看更多
登录 后发表回答