位于“https://www.googleapis.com/”的PositionError网络位置提供商:返回错误代码404

时间:2014-09-08 16:43:26

标签: javascript html5 angularjs

我使用的是Geolocation HTML5 API。我正在使用angular.js。我写了一个小工厂函数

myApp.factory("GeolocationService", ['$q', '$window', '$rootScope',
    function($q, $window, $rootScope) {
        return function() {
            var deferred = $q.defer();

            if (!$window.navigator) {


                $rootScope.$apply(function() {
                    deferred.reject(new Error("Geolocation is not supported"));
                });
            } else {
                $window.navigator.geolocation.getCurrentPosition(function(position) {

                    $rootScope.$apply(function() {
                        deferred.resolve(position);
                    });
                }, function(error) {

                    $rootScope.$apply(function() {
                        deferred.reject(error);
                    });
                });
            }

            return deferred.promise;
        }
    }
]);

当我使用它时。它给了我一个错误

PositionError {message:"网络位置提供商位于' https://www.googleapis.com/' :返回错误代码404。",代码:2,PERMISSION_DENIED:1,POSITION_UNAVAILABLE:2,TIMEOUT:3}

任何人都可以帮忙解决问题吗?

1 个答案:

答案 0 :(得分:0)

您必须启用wifi连接才能使用navigator.geolocation(即使您没有使用它!)

更多解释in this answer