/**
* * 向指定 URL 发送POST方法的请求 * * @param url 发送请求的 URL * @param param 请求参数,请求参数应该是
* name1=value1&name2=value2 的形式。 * @return 所代表远程资源的响应结果
*/
public static String sendPost(String url, String param, Map<String, String> headMap) {
logger.info("请求地址:" + url);
logger.info("请求参数:" + param);
OutputStreamWriter out = null;
BufferedReader in = null;
String result = "";
if (StringUtils.isNotBlank(url)) {
try {
URL realUrl = new URL(url);
// 打开和URL之间的连接
URLConnection connection = realUrl.openConnection();
// 设置通用的请求属性
connection.setRequestProperty("accept", "*/*");
connection.setRequestProperty("connection", "Keep-Alive");
connection.setRequestProperty("Content-Type", "application/json;charset=utf-8");
if (null != headMap && headMap.size() > 0) {
for (Map.Entry<String, String> entry : headMap.entrySet()) {
connection.setRequestProperty(entry.getKey(), entry.getValue());
}
}
// 发送POST请求必须设置如下两行
connection.setDoOutput(true);
connection.setDoInput(true);
// 获取URLConnection对象对应的输出流
out = new OutputStreamWriter(connection.getOutputStream(), "utf-8");
// 发送请求参数
if (null != param) {
out.write(param);
}
// flush输出流的缓冲
out.flush();
// 定义BufferedReader输入流来读取URL的响应
in = new BufferedReader(new InputStreamReader(connection.getInputStream(), "utf-8"));
String line;
while ((line = in.readLine()) != null) {
result += line;
}
} catch (Exception e) {
logger.info("HTTP_LOG_INFO:" + e);
} finally {
// 使用finally块来关闭输出流、输入流
try {
if (in != null) {
in.close();
}
if (out != null) {
out.close();
}
} catch (IOException ex) {
logger.info("HTTP_LOG_INFO:" + ex);
}
}
}
logger.info("post请求返回值:" + result);
return result;
}
// 访问post 传值
Map<String, String> headerParameters = new HashMap<String, String>(4);
// 此处为旗县端6位行政区代码
headerParameters.put("dwdm", "123456");
String data = "123";
logger.info("请求信息:" + data);
// 此处传省厅接管接口地址 url是请求地址,data是请求参数,headerParameters是请求头
String result = sendPost(url, data, headerParameters);
logger.info("返回信息:" + result);
if (StringUtils.isNotEmpty(result)) {
// 此处使用旗县端登记系统私钥进行解密
logger.info("返回信息:" + result);
}
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。