我正在处理一个生产问题,它只发生在 IE10 中,而不会发生在 chrome/Firefox 中。如果我将 IE10 的用户代理 (F12) 更改为 Mozilla Firefox,它就可以正常工作。
我需要调试应用程序层来查找问题,但在此之前我只能建议我的客户修改用户代理。
由于安全和其他组织政策,客户端不会且不能使用/安装除 IE10 之外的任何其他浏览器。
注意:错误不是客户端特定的,客户端代码调用的服务失败了。
一般来说,改变浏览器的用户代理会产生什么影响(撇开浏览器的任何业务逻辑)?
答案1
当您在浏览器中更改用户代理时,会改变 Web 服务器识别您的方式,而不是改变浏览器的工作方式。
答案2
更改用户代理不会对性能或安全性产生任何影响。
我想知道为什么这样做会改变客户端的行为。除了在 HTTP 请求中发送用户代理之外,IE 还可能在执行 JavaScript 或解析 HTML 时尝试采取不同的行为(即,也许在您更改用户代理后它不会进入代码<!--[if IE]>
块?)。如果发生这种情况,那么问题在于不同的浏览器正在执行/解析不同的代码。