使用httppost请求发送form表单的方法
2017-10-25 09:36
756 查看
本人在使用httpclient做接口自动化的过程中,遇到了post请求提交数据是form表单,因为我从数据库读取到的case是map形式的,所以经常尝试和验证,写了一个方法把map里面的数据转化为form表单,然后使用post请求发送数据。下面是转化和设置方法,分享出来,供大家参考。
/**
* 设置post接口上传表单
*
* @param httpPost
* post请求
* @param apiCase
* 传入的参数map
*/
public void setFormHttpEntity(HttpPost httpPost, Map<String, String> apiCase) {
Set<String> keys = apiCase.keySet();
List<NameValuePair> formparams = new ArrayList<NameValuePair>();
for (String key : keys) {
formparams.add(new BasicNameValuePair(key, apiCase.get(key)));
}
UrlEncodedFormEntity entity = null;
try {
entity = new UrlEncodedFormEntity(formparams, "UTF-8");
} catch (UnsupportedEncodingException e) {
output("form表单错误!");
e.printStackTrace();
}
httpPost.setEntity(entity);
}这里可能会遇到中文所以统一用了urlencodeformentity这个类型的实体。
/**
* 设置post接口上传表单
*
* @param httpPost
* post请求
* @param apiCase
* 传入的参数map
*/
public void setFormHttpEntity(HttpPost httpPost, Map<String, String> apiCase) {
Set<String> keys = apiCase.keySet();
List<NameValuePair> formparams = new ArrayList<NameValuePair>();
for (String key : keys) {
formparams.add(new BasicNameValuePair(key, apiCase.get(key)));
}
UrlEncodedFormEntity entity = null;
try {
entity = new UrlEncodedFormEntity(formparams, "UTF-8");
} catch (UnsupportedEncodingException e) {
output("form表单错误!");
e.printStackTrace();
}
httpPost.setEntity(entity);
}这里可能会遇到中文所以统一用了urlencodeformentity这个类型的实体。
相关文章推荐
- Android HTTP实例 使用GET方法和POST方法发送请求
- Android HTTP实例 使用GET方法和POST方法发送请求
- Android使用httpPost向服务器发送请求的方法
- Android HTTP实例 使用GET方法和POST方法发送请求
- Android HTTP实例 使用GET方法和POST方法发送请求
- Android HTTP实例 使用GET方法和POST方法发送请求
- Android HTTP实例 使用GET方法和POST方法发送请求
- Android HTTP实例 使用GET方法和POST方法发送请求
- nodejs使用http模块发送get与post请求的方法示例
- 详解Android中使用OkHttp发送HTTP的post请求的方法
- Android HTTP实例 使用GET方法和POST方法发送请求
- Android HTTP实例 使用GET方法和POST方法发送请求
- Android HTTP实例 使用GET方法和POST方法发送请求
- Android-HTTP实例——使用GET方法、POST方法发送请求(安卓4.0以下版本)
- Android HTTP实例 使用GET方法和POST方法发送请求
- Android HTTP实例 使用GET方法和POST方法发送请求
- Multipart/form-data POST文件上传详解 理论 简单的HTTP POST 大家通过HTTP向服务器发送POST请求提交数据,都是通过form表单提交的,代码如下: <form me
- Android HTTP实例 使用GET方法和POST方法发送请求(通过Apache接口实现)
- wp7使用POST请求Asp.net网页时,HttpWebRequest的BeginGetResponse方法抛出NotSupportException异常的解决方法
- http Form表单的Get和 Post请求深入分析