import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.methods.PostMethod;
public class HttpclientUtils {
/**
* 采用Apache common.httpclient方式模拟POST请求
*
* @param url
* @param params
* @return
* @throws HttpException
* @throws IOException
*/
public static String doPost(String url, Map<String, String> params) throws HttpException, IOException {
HttpClient client = new HttpClient();
PostMethod method = new PostMethod(url);
client.getParams().setContentCharset("UTF-8");
method.setRequestHeader("ContentType", "application/x-www-form-urlencoded;charset=UTF-8");
List<NameValuePair> dataList = new ArrayList<>();
if (params != null && !params.isEmpty()) {
for (Map.Entry<String, String> entry : params.entrySet()) {
dataList.add(new NameValuePair(entry.getKey(), entry.getValue()));
}
}
if (!dataList.isEmpty()) {
method.setRequestBody(dataList.toArray(new NameValuePair[0]));
}
client.executeMethod(method);
String SubmitResult = method.getResponseBodyAsString();
return SubmitResult;
}
}
版权所有 © 【代码谷】 欢迎非商用转载,转载请按下面格式注明出处,商业转载请联系授权,违者必究。(提示:点击下方内容复制出处)
源文:《java编程中采用Apache common.httpclient方式模拟POST请求》,链接:https://www.daimagu.com/article/155.html,来源:【代码谷】
评论