3

我想检查从网页到 Android 设备的请求,whether it is POST request or GET request as in Google Chrome browser. 请告诉我该怎么做。

在此处输入图像描述

注意:我想在任何WebView's Override method.

if request.method == 'GET':
    do_something()
elif request.method == 'POST':
    do_something_else()

编辑1:我试图登录谷歌。我得到了如下的“POST”。我已经尝试过使用 Android WebView 使用 onFormResubmission 方法。但没有调用。

@Override
public void onFormResubmission(WebView view, Message dontResend, Message resend) {          
    super.onFormResubmission(view, dontResend, resend);
    }

在此处输入图像描述

4

2 回答 2

0
HttpURLConnection con = (HttpURLConnection) url.openConnection();
String reqMethod = con.getRequestMethod();  

这样就可以得到准确的方法

于 2013-09-22T08:28:29.967 回答
0

使用自定义WebViewClient如下

 WebView webview = new WebView(this){

        @Override
        public void loadData(String data, String mimeType, String encoding) {
            Log.d("TAGloadData", data+" ==> "+mimeType+" "+encoding);
            super.loadData(data, mimeType, encoding);
        }

        @Override
        public void loadUrl(String url, Map<String, String> extraHeaders) {
            Log.d("TAGloadUrl", " ==> "+extraHeaders);
            super.loadUrl(url, extraHeaders);

        }

        @Override
        public void loadDataWithBaseURL(String baseUrl, String data,
                String mimeType, String encoding, String historyUrl) {
            Log.d("TAGloadUrlB", " ==> "+data);
            super.loadDataWithBaseURL(baseUrl, data, mimeType, encoding, historyUrl);
        }

        @Override
        public void loadUrl(String url) {

            if(!url.startsWith("method"))
                Log.d("TAGForm", " ==> using Post method");
            else{
                url = url.replaceFirst("method","");
                Log.d("TAGForm", " ==> using Get method"+url);
            }

            super.loadUrl(url);
            Log.d("TAGloadUrl", " ==> "+url);
        }

    };
于 2012-10-16T08:17:46.957 回答