Android 4.0.3 - 拒绝获得不安全的标题" AuthToken"

时间:2014-08-05 09:30:53

标签: android angularjs webview cors response-headers

我正在AngularJS中开发一个Web应用程序,它既可以从浏览器访问,也可以嵌入到Android WebView中。

我的队友开发了一些API,通过自定义标题识别用户" AuthToken"。那些API在ASP .NET 4.5中,他正确地添加了" Access-Control-Expose-Headers" Web.config文件中的参数。

API公开方法" authorizeUser"这应该允许我获得AuthToken标题。

如果我从浏览器浏览Web应用程序(Chrome,Firefox,IE,Safari,Opera ..),一切正常。

当我将Web应用程序嵌入到Android WebView中时出现了问题:对于大于4.2.2的Android版本,一切正常......但对于Android版本等于或低于4.2.2的自定义标题" AuthToken& #34;似乎被浏览器阻止了。

这似乎是Android WebView引擎的问题(与Android Stock Browser相同)..我认为它认为AJAX请求是跨站点的,所以它切断了我的自定义标题..

我这样说是因为我确定网络API会返回令牌。

所以我深入研究了AngularJS源代码并编辑了xhr.onreadystatechange的实现..不再使用xhr.getAllResponseHeaders()获取响应头..我试图通过xhr.getResponseHeader("<header-name>")逐个读取它们。

但是当xhr.getResponseHeader("AuthToken")被执行到Android WebView中时,在Logcat中我找到一个WebConsole日志,其中显示&#34;拒绝接收不安全的标头AuthToken&#34; 。< / p>


你遇到过类似的问题吗?

如果您需要更多信息或一些代码段,请告诉我!

0 个答案:

没有答案