我現在攔截在網頁視圖的請求的代碼是的Android攔截的WebView要求正確
@Override
public WebResourceResponse shouldInterceptRequest(WebView view,
String url) {
String ext = MimeTypeMap.getFileExtensionFromUrl(url);
String mime = MimeTypeMap.getSingleton().getMimeTypeFromExtension(ext);
if (mime == null) {
return super.shouldInterceptRequest(view, url);
} else {
HttpURLConnection conn = (HttpURLConnection) new URL(
url).openConnection();
conn.setRequestProperty("User-Agent", userAgent);
return new WebResourceResponse(mime, "UTF-8",
conn.getInputStream());
}
}
我得到這個代碼 The best way to intercept a WebView request in Android。
但是,每當我嘗試執行身份驗證,讓我們說我在我的webview加載Facebook。
mWebView.loadUrl("https://www.facebook.com/");
什麼都沒有發生,我注意到的是,請求標頭是不完整的,也是響應。此外,來源中沒有Cookie。 (我通過Chrome遠程調試webview時看到了這一點)。
請糾正我,如果我錯了,但我認爲不完整的標題和缺少的cookie是導致登錄請求失敗的原因。
有沒有一種方法可以修改請求並設置其標頭?對於答覆,我也應該這樣做嗎?最後,我將如何獲得cookie。