use of org.apache.hc.client5.http.entity.UrlEncodedFormEntity in project weicoder by wdcode.
the class HttpClient5 method post.
@Override
public String post(String url, Map<String, Object> data, Map<String, Object> header) {
try {
// 获得HttpPost
HttpPost post = new HttpPost(url);
// 如果参数列表为空 data为空map
if (U.E.isNotEmpty(data)) {
// 声明参数列表
List<NameValuePair> list = Lists.newList(data.size());
// 设置参数
data.forEach((k, v) -> list.add(new BasicNameValuePair(k, W.C.toString(v))));
// 设置参数与 编码格式
post.setEntity(new UrlEncodedFormEntity(list));
}
// 添加http头
if (U.E.isNotEmpty(header))
header.forEach((k, v) -> post.addHeader(k, v));
Logs.debug("HttpClient post url={} data={} header={}", url, data, header);
// 返回结果
return U.I.readString(CLIENT.execute(post).getEntity().getContent());
} catch (Exception e) {
Logs.error(e);
}
return C.S.EMPTY;
}
Aggregations