簡體   English   中英

在 android 中向 webview 發送數據

[英]Post data to webview in android

有誰知道如何使用 post 方法在 webview 中傳遞值?

engine = (WebView) findViewById(R.id.web_engine);

engine.setWebViewClient(new WebViewClient() {

    @Override
    public void onPageFinished(WebView view, String url) {
        super.onPageFinished(view, url);
    }

    @Override
    public void onPageStarted(WebView view, String url, Bitmap favicon) {
        super.onPageStarted(view, url, favicon);
    }

    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        return super.shouldOverrideUrlLoading(view, url);
    }
});

engine.getSettings().setJavaScriptEnabled(true);
engine.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
engine.loadUrl(url+"?ref=api&uname="+id+"&pass="+pass);

這是我使用 get 方法發送數據的方式,我想使用 Post 方法。

試試這個

String url = "http://www.example.com";
String postData = "username=my_username&password=my_password";
webview.postUrl(url,EncodingUtils.getBytes(postData, "BASE64"));

使用postUrlWebView使用POST。

使用postUrl方法進行post dat。 更多細節關注此

使用Base64.encode更好:

String url = "http://www.example.com";
String postData = "username=my_username&password=my_password";
webview.postUrl(url,Base64.encode(postData.getBytes(), Base64.DEFAULT));

在某些情況下效果更好:

String url = "http://www.example.com";
postData = "username="+URLEncoder.encode("my_username", "UTF-8")+"&password="+URLEncoder.encode("my_password", "UTF-8");
 webview.postUrl(url,postData.getBytes());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM