ASP.NET Webforms не отображает функцию обратной передачи JavaScript для Chrome/iOS
Когда мы поставляем пользовательский агент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), она будет работать нормально. Может кто-нибудь объяснить это?
1 ответ
Таким образом, проблема заключается в том, что пользовательский агент 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>