|
@@ -0,0 +1,195 @@
|
|
|
+package com.kingdee.eas.custom.shengshen.utils;
|
|
|
+
|
|
|
+
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
+
|
|
|
+import java.io.*;
|
|
|
+import java.net.HttpURLConnection;
|
|
|
+import java.net.MalformedURLException;
|
|
|
+import java.net.URL;
|
|
|
+
|
|
|
+
|
|
|
+public class HttpClient3 {
|
|
|
+ public static byte[] getBytesByNetURL(String urlStr) throws IOException {
|
|
|
+// RestTemplate restTemplate = new RestTemplate();
|
|
|
+// ResponseEntity<byte[]> responseEntity = restTemplate.exchange(urlStr, HttpMethod.GET, null, byte[].class);
|
|
|
+// byte[] fileContent = responseEntity.getBody();
|
|
|
+ URL url = new URL(urlStr);
|
|
|
+ HttpURLConnection conn = (HttpURLConnection) url.openConnection();
|
|
|
+// //设置超时时间
|
|
|
+ conn.setConnectTimeout(5 * 1000);
|
|
|
+// //通过输入流获取图片数据
|
|
|
+ InputStream in = conn.getInputStream();
|
|
|
+// //得到图片的二进制数据
|
|
|
+ ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
|
|
|
+ byte[] buffer = new byte[1024];
|
|
|
+ int len;
|
|
|
+ while ((len = in.read(buffer)) != -1) {
|
|
|
+ outputStream.write(buffer, 0, len);
|
|
|
+ }
|
|
|
+ in.close();
|
|
|
+ return outputStream.toByteArray();
|
|
|
+// return fileContent;
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * http get请求
|
|
|
+ * @param httpUrl 链接
|
|
|
+ * @return 响应数据
|
|
|
+ */
|
|
|
+ public static InputStream doGet(String httpUrl){
|
|
|
+ //链接
|
|
|
+ HttpURLConnection connection=null;
|
|
|
+ InputStream is=null;
|
|
|
+ BufferedReader br = null;
|
|
|
+ StringBuffer result=new StringBuffer();
|
|
|
+ try {
|
|
|
+ //创建连接
|
|
|
+ URL url=new URL(httpUrl);
|
|
|
+ connection= (HttpURLConnection) url.openConnection();
|
|
|
+ //设置请求方式
|
|
|
+ connection.setRequestMethod("GET");
|
|
|
+ //设置连接超时时间
|
|
|
+ connection.setConnectTimeout(15000);
|
|
|
+ //设置读取超时时间
|
|
|
+ connection.setReadTimeout(15000);
|
|
|
+ //开始连接
|
|
|
+ connection.connect();
|
|
|
+ //获取响应数据
|
|
|
+ if(connection.getResponseCode()==200){
|
|
|
+ //获取返回的数据
|
|
|
+ is=connection.getInputStream();
|
|
|
+
|
|
|
+// if(is!=null){
|
|
|
+// br=new BufferedReader(new InputStreamReader(is,"UTF-8"));
|
|
|
+// String temp = null;
|
|
|
+// while ((temp=br.readLine())!=null){
|
|
|
+// result.append(temp);
|
|
|
+// }
|
|
|
+// }
|
|
|
+ }
|
|
|
+ } catch (MalformedURLException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ } catch (IOException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }finally {
|
|
|
+ if(br!=null){
|
|
|
+ try {
|
|
|
+ br.close();
|
|
|
+ } catch (IOException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(is!=null){
|
|
|
+ try {
|
|
|
+ is.close();
|
|
|
+ } catch (IOException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ connection.disconnect();// 关闭远程连接
|
|
|
+ }
|
|
|
+
|
|
|
+ return is;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * post请求
|
|
|
+ * @param httpUrl 链接
|
|
|
+ * @param param 参数
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public static JSONObject doPost(String httpUrl, String param) {
|
|
|
+ StringBuffer result=new StringBuffer();
|
|
|
+ //连接
|
|
|
+ HttpURLConnection connection=null;
|
|
|
+ OutputStream os=null;
|
|
|
+ InputStream is=null;
|
|
|
+ BufferedReader br=null;
|
|
|
+ JSONObject jsonObject = null;
|
|
|
+ try {
|
|
|
+ //创建连接对象
|
|
|
+ URL url=new URL(httpUrl);
|
|
|
+ //创建连接
|
|
|
+ connection= (HttpURLConnection) url.openConnection();
|
|
|
+ //设置请求方法
|
|
|
+ connection.setRequestMethod("POST");
|
|
|
+ //设置连接超时时间
|
|
|
+ connection.setConnectTimeout(15000);
|
|
|
+ //设置读取超时时间
|
|
|
+ connection.setReadTimeout(15000);
|
|
|
+ //设置是否可读取
|
|
|
+ connection.setDoOutput(true);
|
|
|
+ //设置响应是否可读取
|
|
|
+ connection.setDoInput(true);
|
|
|
+ //设置参数类型
|
|
|
+ connection.setRequestProperty("Content-Type", "application/json");
|
|
|
+ //拼装参数
|
|
|
+ if(param!=null&&!param.equals("")){
|
|
|
+ //设置参数
|
|
|
+ os=connection.getOutputStream();
|
|
|
+ //拼装参数
|
|
|
+ os.write(param.getBytes("UTF-8"));
|
|
|
+ }
|
|
|
+ //设置权限
|
|
|
+ //设置请求头等
|
|
|
+
|
|
|
+ //开启连接
|
|
|
+ //connection.connect();
|
|
|
+ //读取响应
|
|
|
+ if(connection.getResponseCode()==200){
|
|
|
+ is=connection.getInputStream();
|
|
|
+ if(is!=null){
|
|
|
+ br=new BufferedReader(new InputStreamReader(is,"UTF-8"));
|
|
|
+ String temp=null;
|
|
|
+ if((temp=br.readLine())!=null){
|
|
|
+ result.append(temp);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ jsonObject = JSON.parseObject(String.valueOf(result));
|
|
|
+
|
|
|
+ }
|
|
|
+ //关闭连接
|
|
|
+ } catch (MalformedURLException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ } catch (IOException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }finally {
|
|
|
+ if(br!=null){
|
|
|
+ try {
|
|
|
+ br.close();
|
|
|
+ } catch (IOException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(os!=null){
|
|
|
+ try {
|
|
|
+ os.close();
|
|
|
+ } catch (IOException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(is!=null){
|
|
|
+ try {
|
|
|
+ is.close();
|
|
|
+ } catch (IOException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ //关闭连接
|
|
|
+ connection.disconnect();
|
|
|
+ }
|
|
|
+ return jsonObject;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ public static void main(String[] str){
|
|
|
+ /*String result=HttpURLConnectionUtil.doGet("http://localhost:8080/test");
|
|
|
+ System.out.println(result);*/
|
|
|
+ /*Map<String, Object> map=new HashMap<>();
|
|
|
+ map.put("1","1");
|
|
|
+ map.put("2","2");
|
|
|
+ map.put("3","3");
|
|
|
+ System.out.println(HttpURLConnectionUtil.getParamStr(map));*/
|
|
|
+ }
|
|
|
+}
|