package com.wondersgroup.wx.weiXin.utils;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Map;
import org.apache.commons.lang3.StringUtils;
public class UrlConnectionUtils {
/**get方式 map传递头部参数 参数可null **/
public static String sendSetHeaderGetRequestByGet(String url,Map<String,String> map) throws Exception{
HttpURLConnection httpURLConnection;
InputStream input=null;
BufferedReader reader=null;
String result="";
try {
URL sendUrl = new URL(url);
httpURLConnection = (HttpURLConnection)sendUrl.openConnection();
httpURLConnection.setRequestMethod("GET");
httpURLConnection.setDoOutput(true); //指示应用程序要将数据写入URL连接,其值默认为false
httpURLConnection.setUseCaches(false);
httpURLConnection.setConnectTimeout(30000); //30秒连接超时
httpURLConnection.setReadTimeout(30000); //30秒读取超时
httpURLConnection.setRequestProperty("contentType", "utf-8");
if(map != null){
//设置头部参数
httpURLConnection.setRequestProperty(null, map.get(null));
}
httpURLConnection.connect();
input=httpURLConnection.getInputStream();
reader=new BufferedReader(new InputStreamReader(input,"UTF-8"));
result=reader.readLine();
return result;
} catch (Exception e) {
e.printStackTrace();
}finally{
try {
input.close();
reader.close();
} catch (Exception e) {
e.printStackTrace();
}
}
return null;
}
/**post方式 map传递头部参数 参数可null json字符串参数 可为null **/
public static String sendSetHeaderGetRequestByPost(String url,Map<String,String> map,String json) throws Exception{
HttpURLConnection httpURLConnection;
InputStream input=null;
BufferedReader reader=null;
String result="";
try {
URL sendUrl = new URL(url);
httpURLConnection = (HttpURLConnection)sendUrl.openConnection();
httpURLConnection.setRequestMethod("POST");
httpURLConnection.setDoOutput(true); //指示应用程序要将数据写入URL连接,其值默认为false
httpURLConnection.setUseCaches(false);
httpURLConnection.setConnectTimeout(30000); //30秒连接超时
httpURLConnection.setReadTimeout(30000); //30秒读取超时
httpURLConnection.setRequestProperty("contentType", "application/Json; charset=UTF-8");
if(map != null){
//设置头部参数
httpURLConnection.setRequestProperty(null, map.get(null));
}
httpURLConnection.connect();
//传入参数
if(!StringUtils.isBlank(json)){
OutputStream output=httpURLConnection.getOutputStream();
output.write(json.getBytes());
output.flush();
output.close();
}
input=httpURLConnection.getInputStream();
reader=new BufferedReader(new InputStreamReader(input,"UTF-8"));
result=reader.readLine();
return result;
} catch (Exception e) {
e.printStackTrace();
}finally{
try {
input.close();
reader.close();
} catch (Exception e) {
e.printStackTrace();
}
}
return null;
}
}
url 远程连接
最新推荐文章于 2024-03-26 11:58:55 发布