当我使用Chrome([Deprecation] getCurrentPosition() and watchPosition() no longer work on insecure origins. To use this feature, you should consider switching your application to a secure origin, such as HTTPS.
win @ :8100/plugins/cordova-plugin-geolocation/www/android/geolocation.js:35
)运行本地主机时,我的Ionic应用中出现此错误:
Single
如何让它消失?
如何确定设备没有问题?
答案 0 :(得分:0)
在浏览器中使用this plugin重试。
它允许您从任何来源请求任何带有Ajax的站点,无论http / https差异等。实际上在响应中添加了'Access-Control-Allow-Origin': '*'
标题。
请记住,这是一种创可贴解决方案。您的服务器响应必须实际上具有*
标头,最好具有比getCurrentPosition()
更具体的值。
根据您的体系结构,切换到HTTPS可能会很痛苦或不可能, 我找到了一种解决方法:您可以使用Google Maps Geolocation API。虽然它有使用限制,但它可以完成这项工作。您将需要一个浏览器API密钥,因此不要忘记将其使用限制在您的页面主机名。
如果它失败,我将它用作getCurrentPosition()
方法的回退方法。它允许我使其工作,直到我切换到HTTPS。
这是JSFiddles: