我正在构建一个网络应用程序,其中涉及移动设备摇动事件的检测:
if (this.hasDeviceMotion) { window.addEventListener('devicemotion', this, false); }
我正在使用shake.js plugin作者:亚历克斯·吉布森。
在 Chrome 桌面浏览器中测试我的应用时,我收到此警告:
devicemotion 事件在不安全的来源上已被弃用,并且将来将删除支持。您应该考虑将应用程序切换到安全来源,例如 HTTPS。有关更多详细信息,请参阅 https://goo.gl/rStTGz。
在此链接中有以下文字:
我们希望开始将 https://w3c.github.io/webappsec/specs/powerfulfeatures/中的概念应用于已经发布且不符合(新的、当时不存在的)功能) 要求。我们希望首先要求这些现有功能的安全来源:
设备运动/方向
欧洲及中东地区
全屏
地理定位
getUserMedia()...
尽管它目前在桌面 Chrome 上已被弃用,但了解山景城的人们,我确信它很快也会在移动 Chrome 和 Android Webview 上被弃用。
我的应用程序托管在没有安全连接的服务器上,只有 HTTP。有没有办法绕过此警告并通过 HTTP 连接在我的应用程序中进行震动检测?
最佳答案
绕过弃用的最佳方法是将您的应用程序移至 HTTPS。
为了使网络更加安全,许多浏览器将弃用纯 HTTP。您应该遵循这一趋势并使您的应用程序支持 HTTPS。不过这并不难,免费的 SSL 证书即将推出 ( Let's Encrypt )。
关于javascript - 绕过 Chrome 中的 'ondevicemotion' 弃用警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33592732/