使用HttpClient 发送HTTP类型的 POST ,GET 的信息
来源:互联网 发布:对json进行url编码 编辑:程序博客网 时间:2024/06/05 16:47
* post 请求发送json 字符串格式的数据(美团接口发送请求时候) 发送文字格式的使用字符流
* @param url
* @param Params
* @return
* @throws IOException
*/
public static String sendPostJSON(String url, String outputStr) {
if (StringUtils.isBlank(url)) {
logger.error("请求url为空 !");
return null;
}
if (StringUtils.isBlank(outputStr)) {
logger.error("发送内容为空 !");
return null;
}
System.out.println(url + ">>请求data:" + outputStr);
logger.info(url + ">>请求data:" + outputStr);
PrintWriter out = null;
BufferedReader in = null;
String result = "";
try {
URL realUrl = new URL(url);
// 打开和URL之间的连接
HttpURLConnection conn = (HttpURLConnection) realUrl.openConnection();
// 设置通用的请求属性
conn.setRequestProperty("Content-Type", "application/json");
// conn.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");
// 发送POST请求必须设置如下两行
conn.setDoOutput(true);
conn.setDoInput(true);
conn.setRequestMethod("POST");
conn.setUseCaches(false);
conn.setConnectTimeout(30000);
conn.setReadTimeout(30000);
if (null != outputStr) {
System.out.println(outputStr);
OutputStream outputStream = conn.getOutputStream();
outputStream.write(outputStr.getBytes("UTF-8"));
outputStream.close();
}
// 定义BufferedReader输入流来读取URL的响应
in = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8"));
String line;
while ((line = in.readLine()) != null) {
result += line;
}
System.out.println(url + ">>返回data:" + result);
logger.info(url + ">>返回data:" + result);
} catch (Exception e) {
System.out.println("发送 POST 请求出现异常!" + e);
e.printStackTrace();
}
// 使用finally块来关闭输出流、输入流
finally {
try {
if (out != null) {
out.close();
}
if (in != null) {
in.close();
}
} catch (Exception ex) {
ex.printStackTrace();
}
}
return result;
}
------------------------------------------------------------
/**
* 向指定URL发送GET方法的请求
*
* @param url
* 发送请求的URL
* @param param
* 请求参数,请求参数应该是 name1=value1&name2=value2 的形式。
* @return URL 所代表远程资源的响应结果
*/
public static String sendGet(String url, String param) {
String result = "";
BufferedReader in = null;
String urlNameString="";
try {
if (param!=null&&!"".equals(param)) { //参数不为空
urlNameString = url + "?" + param;
}else { //参数为空
urlNameString = url;
}
URL realUrl = new URL(urlNameString);
// 打开和URL之间的连接
URLConnection connection = realUrl.openConnection();
// 设置通用的请求属性
connection.setRequestProperty("accept", "*/*");
connection.setRequestProperty("connection", "Keep-Alive");
connection.setRequestProperty("user-agent",
"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
// 建立实际的连接
connection.connect();
connection.setConnectTimeout(80000);
connection.setReadTimeout(80000);
// 定义 BufferedReader输入流来读取URL的响应
in = new BufferedReader(new InputStreamReader(
connection.getInputStream(),"UTF-8"));
String line;
while ((line = in.readLine()) != null) {
result += line;
}
} catch (Exception e) {
System.out.println("发送GET请求出现异常!" + e);
e.printStackTrace();
}
// 使用finally块来关闭输入流
finally {
try {
if (in != null) {
in.close();
}
} catch (Exception e2) {
e2.printStackTrace();
}
}
return result;
}
- 使用HttpClient 发送HTTP类型的 POST ,GET 的信息
- java使用HttpClient模拟发送http的get、post请求
- 发送Http请求(POST GET)的方法
- 发送Http请求(POST GET)的方法
- 发送Http请求(POST GET)的方法
- 发送Http请求(POST GET)的方法
- 发送Http请求(POST GET)的方法
- java发送http的get、post请求
- java发送http的get、post请求
- java发送http的get、post请求
- java发送http的get、post请求
- java发送http的get、post请求
- 发送Http请求(POST GET)的方法
- java发送http的get、post请求
- java发送http的get、post请求
- java发送http的get、post请求
- java发送http的get、post请求
- java发送http的get、post请求
- servlet获取HTML表单的数据
- android 的线程和线程池
- 【Android工具】19个实用的Android开发工具
- Hadoop 2.0 NameNode HA和Federation实践
- QT通过API获取天气信息
- 使用HttpClient 发送HTTP类型的 POST ,GET 的信息
- NBUT 1457 Sona (莫队算法)
- 3ds Max展UV
- android mm and ndk-build
- 第一次反编
- 过渡与动画
- COUNT()函数使用时数据溢出-->COUNT_BIG
- [资源分享][Unity好文章]实现网球乒乓球回弹的效果
- CSS可见性