页面或脚本正在访问 navigator.userAgent、navigator.appVersion 和 navigator.platform 中的至少一个

新手上路,请多包涵

我的 JavaScript 程序出现问题,当我提交表单时,必须在控制台中打印一条消息。但我遇到了这个问题:

页面或脚本正在访问 navigator.userAgent、navigator.appVersion 和 navigator.platform 中的至少一个。在未来版本的 Chrome 中,用户代理字符串中可用的信息量将会减少。

还提到:

要解决此问题,请将 navigator.userAgent、navigator.appVersion 和 navigator.platform 的使用替换为功能检测、渐进增强或迁移到 navigator.userAgentData。

但我不知道该怎么做!

原文由 Khatere Rezaei 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 2.3k
1 个回答

该消息告诉您您使用了一些已弃用的资源,即

  • navigator.userAgent
  • navigator.appVersion
  • navigator.platform

在整个代码库中搜索所有这些,并检测引用其中任何一个的所有行。

阅读有关此问题的一些文章,例如:https: //web.dev/migrate-to-ua-ch/

这篇文章可能涵盖了您需要解决的大部分(或全部)问题。基本上用户代理字符串会有限制。这意味着您现在使用的很多东西在某个更新后将不再可用。因此,您需要调整您的 Javascript,使其对不再可用的数据具有回退逻辑,并应用必要的更改,即使在更改后数据仍然可用。看了几篇文章,这是一个已知问题。

原文由 Lajos Arpad 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题