Próbuję zrobić, aby moje nagłówki WebView wyglądały tak, jakby użytkownik korzystał tylko ze zwykłej przeglądarki i nie korzystał z WebView. Z tego, co mogę zebrać, nagłówki są identyczne, oprócz tego, że WebView wysyła również nagłówek X-Requested-With zawierający nazwę pakietu aplikacji. Czy istnieje sposób, aby temu zapobiec?Android: Wyłącz X-Requested-With Header In WebView
13
A
Odpowiedz
1
Można to zrobić na Android API> 11
public class AndroidMobileAppSampleActivity extends Activity {
Map<String, String> extraHeaders = new HashMap<String, String>();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
WebView mainWebView = (WebView) findViewById(R.id.mainWebView);
// must define X-Requested-With, if header missing, then webview will
//add your package name
extraHeaders.put("X-Requested-With", "your presentation");
WebSettings webSettings = mainWebView.getSettings();
webSettings.setJavaScriptEnabled(true);
mainWebView.setWebViewClient(new MyCustomWebViewClient());
mainWebView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
mainWebView.loadUrl("http://www.somesite.com", extraHeaders);
}
private class MyCustomWebViewClient extends WebViewClient {
@Override
public WebResourceResponse shouldInterceptRequest(WebView view,
String url) {
// TODO Here you must overwrite request using your
// HttpClient Request
// and pass it to new WebResourceResponse
return new WebResourceResponse(response.ContentType, response.ContentEncoding, responseStream);
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
// Apply again your heades here
view.loadUrl(url, extraHeaders);
return true;
}
}
}
+1
Oznacza to, że możemy jedynie modyfikować wartość nagłówka "X-Requested-With". Czy istnieje sposób, w jaki możemy go całkowicie usunąć lub odrzucić? – Manisha
Powiązane problemy
- 1. WebView Cocoa - Wyłącz wszystkie interakcje
- 2. Wyłącz zdarzenia dotykowe WebView w Androidzie
- 3. Android: WebView shouldInterceptRequest nie dodając RequestProperties w WebView
- 4. Android WebView removeCookie
- 5. Android: PhoneGap vs Webview
- 6. Android Webview POST
- 7. Uchwyt Android WebView onReceivedClientCertRequest
- 8. Android webview późny rendering
- 9. Android webView saveState
- 10. Android WebView smooth scroll
- 11. WebView z IFRAME android
- 12. Android WebView JavaScript getSelection
- 13. Kolor tła Android WebView
- 14. Wydajność Android WebView
- 15. Android: Wyświetlanie obrazów w Webview
- 16. Włącz/wyłącz Android ActionBar.Tab
- 17. można autolink daty Android WebView
- 18. Android WebView nie ładuje URL
- 19. Menu kontekstowe w Android WebView
- 20. Proguard przerywa Android WebView, dlaczego?
- 21. Android WebView przewijanie w dół
- 22. Android WebView nie ładuje jQuery
- 23. Android Webview pozostanie w aplikacji
- 24. Zrozumienie webview przeglądarki Android addjavascriptinterface
- 25. Android WebView powoduje naruszenie StrictMode.
- 26. Przekierowanie Android WebView 302 - Honeycomb
- 27. Skalowanie czcionek Android WebView iFrame
- 28. programowy kliknięcie w Android WebView
- 29. Android- Webview onPageFinished Called Twice
- 30. Android WebView canGoBack zawsze prawdziwy
+1 zwykle X-o-z jest używany do wykrywania żądania ajax, rodzaj węży rzeczy, gdy android wysyła nagłówek na _wszystkie_ żądanie, AJAX czy też nie . – virtualeyes
To brzmi jak http://stackoverflow.com/questions/7610790/add-custom-headers-to-webview-resource-requests-android – jlindenbaum
@KingFu - Czy udało ci się całkowicie odrzucić nagłówek X-Request-With? Ponieważ wszystkie odpowiedzi dotyczą głównie modyfikowania lub edytowania nagłówka zamiast usuwania lub wyłączania go. – Manisha