android中webview loadUrl(String url,Map header)方法和postUrl(String url,byte[] postData)方法同时使用问题;

首先说明 loadUrl(String url,Map header)是用于加载webview中添加请求头的方法

postUrl(String url,byte[] postData)是用于加载webview中添加请求体的方法

但是比较坑的是如果你想同时添加请求头和请求体这两个方法都不能用,并且android自带的webview中也没有提供方法,

android确实有些地方还不如苹果啊,苹果webview就有自带的方法,可以将请求头请求体都放到Request中。

在stackoverflow上搜索后有用其他第三方封装的http请求做的,但是比较麻烦,在这里说出我自己的处理方法,不一定适合所有人,

但是绝对简单粗暴,我用的就是 loadUrl(String url,Map header)方法,将自己的请求体拼接到url中

也就是url=url+"?body="+body;

然后用 loadUrl(String url,Map header)方法将url替换成带请求体的url,请求头就写成map格式,问题就解决了,需要做的就是让后台支持get方法请求。

 

 

方法二: 利用普通http请求,请求服务端的html数据, 利用下面的api加载html数据即可

webView.loadData(response, "text/html; charset=UTF-8", null);
posted @ 2016-10-22 22:52  深入理解计算机系统  阅读(9572)  评论(0编辑  收藏  举报