如何修改Android webview中资源请求的请求头中的“X-requested-with”键的值,而不是页面请求?

时间:2013-11-01 02:53:17

标签: android ajax ajax-request

当我的webView访问网址时捕获http包时遇到问题。该软件包显示ajax发送的请求有一个&x; 39-requested-with'标题中的键,具有我的应用包名称的值,例如' com.xxx'。我不希望我访问过的网址知道我的应用程序发出的请求,因此我需要更换“X-requested-with'另一个值。但是我在Add custom headers to WebView resource requests - android尝试了这个问题,所有这些都没有用。

loadUrl(Strring url, Map<String, String> extraHeaders)仅在页面请求中被调用,而不是在ajax发送的资源请求中被调用。shouldOverrideUrlLoading(WebView view, String url)WebViewClient.shouldInterceptRequest(android.webkit.WebView view, java.lang.String url)将在每个请求中被调用,但我可以&#39;修改其中的标题。 那么问题的任何解决方案呢?非常感谢你。

1 个答案:

答案 0 :(得分:6)

好吧,最后我解决了这个问题。我仍无法在加载页面中找到修改ajax发送的请求中的标头的方法,但我选择覆盖public String getPackageName()中的Application。我查询调用堆栈,如果调用来自android.webkit,我返回另一个字符串而不是我的包名。所以我的问题解决了。但基本问题仍然存在。