package com.expai.utils;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.UnsupportedEncodingException;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.ProtocolException;
import java.net.URL;
import java.util.Map;
import java.util.Map.Entry;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* Description:后台服务要调用其他架构服务post请求服务类
*/
public class HttpPostUtils {
private static Logger logger = LoggerFactory.getLogger(HttpPostUtils.class);
/**
* 发送请求
* @param url
* @param params
* @return
*/
public static String sendPost(String url,Map<String,String> params){
logger.debug("sendPost======================开始===========");
URL u = null;
HttpURLConnection con = null;
//构建请求参数
StringBuffer sb = new StringBuffer();
if(params != null){
for(Entry<String,String>e:params.entrySet()){
sb.append(e.getKey());
sb.append("=");
sb.append(e.getValue());
sb.append("&");
}
sb.substring(0, sb.length()-1);
}
logger.debug("send_url:"+url);
logger.debug("send_data:"+sb.toString());
//发送请求
try {
u = new URL(url);
con = (HttpURLConnection)u.openConnection();
con.setRequestMethod("GET");
con.setDoInput(true);
con.setDoOutput(true);
con.setUseCaches(false);
con.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
OutputStreamWriter osw = new OutputStreamWriter(con.getOutputStream(), "UTF-8");
osw.write(sb.toString());
osw.flush();
osw.close();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (ProtocolException e) {
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}finally{
if(con!=null){
con.disconnect();
}
}
//读取返回的参数
StringBuffer buffer = new StringBuffer();
try {
BufferedReader br = new BufferedReader(new InputStreamReader(
con.getInputStream(), "UTF-8"));
String temp;
while ((temp = br.readLine()) != null) {
buffer.append(temp);
buffer.append("\n");
}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return buffer.toString();
}
}
javahttp请求
最新推荐文章于 2024-09-07 12:59:11 发布