当我们提供用户代理时Mozilla/5.0 (iPhone; CPU iPhone OS 5_0_1 like Mac OS X; en-us) AppleWebKit/534.46.0 (KHTML, like Gecko) CriOS/21.0.1180.80 Mobile/9A405 Safari/7534.48.3
对于我们的 .NET 4 Webforms 应用程序,定义函数 __doPostBack 的脚本不存在于页面上,因此使用它的任何东西都不起作用。
如果我们提供任何其他用户代理字符串(例如 Safari),它就可以正常工作。有人可以解释一下吗?
所以问题是 Chrome 用户代理不被 .net 识别,因此它假设它正在处理低级浏览器。
为了解决这个问题,我们添加了~/App_Browsers/CriOS.browser
包含以下内容:
<browsers>
<browser id="CriOS" parentID="Safari">
<identification>
<userAgent match="CriOS" />
</identification>
<capabilities>
<capability name="browser" value="CriOS" />
<capability name="ecmascriptversion" value="3.0" />
<capability name="javascript" value="true" />
<capability name="javascriptversion" value="1.7" />
</capabilities>
</browser>
</browsers>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)