【发布时间】:2016-03-03 09:51:10
【问题描述】:
当我向服务器发布一些 url 时,我试图在 webview 中获取响应标头。我正在使用 shouldInterceptRequest 方法。
@Override
public WebResourceResponse shouldInterceptRequest(final WebView view, final WebResourceRequest request) {
if(request.getUrl().toString().contains(SMConstant.INTERCEPTED_URL)){
if(interceptFlag==0){
((Activity) mContext).runOnUiThread(new Runnable(){
@Override
public void run() {
view.postUrl(request.getUrl().toString(), EncodingUtils.getBytes(postData, "UTF-8"));
}
});
interceptFlag++;
}
}
return super.shouldInterceptRequest(view, request);
}
此方法返回 WebResourceResponse 对象。但我不知道如何从中获取响应标头。
默认情况下return super.shouldInterceptRequest(view, request); 返回 null。
那么,应该怎么做才能捕获实际的 webview 响应。
【问题讨论】:
-
WebView 不提供对响应标头的访问。如果您需要访问此数据,您必须使用 HTTP 客户端并自行检索页面。 stackoverflow.com/questions/3134389/…