Android webview自动解码字符串

时间:2015-07-02 11:16:52

标签: android android-webview

我们已向android网页视图发送了一个POST请求,但是网页视图会自动进行一些网址解码,服务器端会收到错误的数据。

例如:当我们通过webview发布此值时,我们有一个像aedTH5634 + hjsGT78-67ty这样的签名值,webview自动将+值转换为space.SO在服务器签名值中是错误的。如何避免这种解码。

IOS webview workig很好,它发送了我们有POST的确切值。如何从android webview中避免这种解码。

帮助非常明显,

谢谢,

3 个答案:

答案 0 :(得分:2)

不确定它会如何帮助处于类似情况的其他人,但我仍然会给我0.02美元,我能够像这样解决我的问题,我使用了以下方法并确保编码保留用于编码值使用base64和将数据转换为base 64,详细了解此here

  

void loadData(String data,                   字符串mimeType,                   字符串编码)

像这样将数据转换为base64

echo $_GET['date'];

并最终将所有内容整合在一起

String base64Data = android.util.Base64.encodeToString(yourdata.getBytes("UTF-8"), android.util.Base64.DEFAULT);

答案 1 :(得分:0)

也许是Android WebView Bug? 只是一个解决方法:

webView.loadUrl(URLEncoder.encode(yourStr));

答案 2 :(得分:0)

代码有效。

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT){
    this.evaluateJavascript(javascriptCommand, null);
} else {
    this.loadUrl(javascriptCommand); 
}