原生http封装
package com.xjca.online.util;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.URL;
import net.sf.json.JSONObject;
public class PubHttps {
public static String postHttps(JSONObject obj,String urls){
try{
URL url = new URL(urls);//""
// 建立http连接
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
// 设置允许输出
conn.setDoOutput(true);
conn.setDoInput(true);
// 设置不用缓存
conn.setUseCaches(false);
// 设置传递方式
conn.setRequestMethod("POST");
// 设置维持长连接
conn.setRequestProperty("Connection", "Keep-Alive");
//转换为字节数组
byte[] data = (obj.toString()).getBytes();
// 设置文件长度
conn.setRequestProperty("Content-Length", String.valueOf(data.length));
// 设置文件类型:
conn.setRequestProperty("content-type", "application/json;charset=utf-8");
// 开始连接请求
conn.connect();
OutputStreamWriter out = new OutputStreamWriter(conn.getOutputStream(), "UTF-8");
out.write(obj.toString());
out.flush();
out.close();
System.out.println("请求结果:"+conn.getResponseCode());
// 请求返回的状态
if (conn.getResponseCode() == 200) {
System.out.println("连接成功");
// 请求返回的数据
InputStream in = conn.getInputStream();
String a = null;
try {
byte[] data1 = new byte[in.available()];
in.read(data1);
// 转成字符串
//a = new String(data1);
a = new String(data1,"UTF-8");
try{
//CdcResult res=(CdcResult)obj.toBean(obj, CdcResult.class);
//res.getCaID();
return a;
//System.out.println(a);
//return a.substring(a.indexOf(":")+1, a.lastIndexOf(",") );
}catch(Exception e){
//System.out.println("Ybs1:"+e.toString());
return null;
}
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
//System.out.println(e1.printStackTrace());
return null;
}
} else {
System.out.println("!=200");
return null;
}
} catch (Exception e) {
//System.out.println("Ybs2:"+e.toString());
return null;
}
}
public static String HttpsGet(String urls){
try{
URL url = new URL(urls);//""
// 建立http连接
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
// 设置允许输出
conn.setDoOutput(true);
conn.setDoInput(true);
// 设置不用缓存
conn.setUseCaches(false);
// 设置传递方式
conn.setRequestMethod("GET");
// 设置维持长连接
conn.setRequestProperty("Connection", "Keep-Alive");
// 设置文件类型:
conn.setRequestProperty("content-type", "application/json;charset=utf-8");
// 开始连接请求
conn.connect();
OutputStreamWriter out = new OutputStreamWriter(conn.getOutputStream(), "UTF-8");
out.flush();
out.close();
System.out.println("请求结果:"+conn.getResponseCode());
// 请求返回的状态
if (conn.getResponseCode() == 200) {
System.out.println("连接成功");
// 请求返回的数据
InputStream in = conn.getInputStream();
String a = null;
try {
byte[] data1 = new byte[in.available()];
in.read(data1);
// 转成字符串
a = new String(data1);
try{
//CdcResult res=(CdcResult)obj.toBean(obj, CdcResult.class);
//res.getCaID();
return a;
//System.out.println(a);
//return a.substring(a.indexOf(":")+1, a.lastIndexOf(",") );
}catch(Exception e){
//System.out.println("Ybs1:"+e.toString());
return null;
}
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
//System.out.println(e1.printStackTrace());
return null;
}
} else {
System.out.println("!=200");
return null;
}
} catch (Exception e) {
//System.out.println("Ybs2:"+e.toString());
return null;
}
}
}
注意:jsonObject经量使用阿里的fastjson去转换,hutool转换有问题
本文来自博客园,作者:极地阳光-ing,转载请注明原文链接:https://www.cnblogs.com/Polar-sunshine/p/16106757.html

浙公网安备 33010602011771号