http请求接口,http接口远程调用

 import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.URL;
import java.net.URLConnection;
import com.eos.runtime.core.TraceLoggerFactory;
import com.eos.system.logging.Logger;


/**
 * 
  * @date 2017/11/27
 *
 */
public class RequestUtils {

private  Logger log = TraceLoggerFactory.getLogger(getClass());

public static RequestUtils requestUtils=null;


public static RequestUtils getInstence(){
if(requestUtils==null){
requestUtils=new RequestUtils();
}
return requestUtils;
}


/**

* get 請求
* url :url连接地址

*/
   public String httpGet(String url) {
       String result = "";
       BufferedReader in = null;
       try {
           String 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();
            in = new BufferedReader(new InputStreamReader(
                   connection.getInputStream()));
           String line;
           while ((line = in.readLine()) != null) {
               result += line;
           }
       } catch (Exception e) {
       log.error("发送GET请求出现异常!" , e);
           e.printStackTrace();
       }
        finally {
           try {
               if (in != null) {
                   in.close();
               }
           } catch (Exception e2) {
               e2.printStackTrace();
           }
       }
       return result;
   }
   
   /**
    *
    *post请求
    *@param url 连接地址
    *@param param  请求参数
    * 
    **/
   public String httpPost(String url, String param) {
       PrintWriter out = null;
       BufferedReader in = null;
       String result = "";
       try {
           URL realUrl = new URL(url);
           // 打开和URL之间的连接
           URLConnection conn = realUrl.openConnection();
           // 设置通用的请求属性
           conn.setRequestProperty("accept", "*/*");
           conn.setRequestProperty("connection", "Keep-Alive");
           conn.setRequestProperty("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");
           // 发送POST请求必须设置如下两行
           conn.setDoOutput(true);
           conn.setDoInput(true);
           // 获取URLConnection对象对应的输出流
           out = new PrintWriter(conn.getOutputStream());
           // 发送请求参数
           out.print(param);
           out.flush();
           in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
           String line;
           while ((line = in.readLine()) != null) {
               result += line;
           }
       } catch (Exception e) {
           log.error("发送 POST 请求出现异常!",e);
        }
        finally{
           try{
               if(out!=null){out.close();}
               if(in!=null){in.close();}
           }
           catch(IOException ex){
             log.error("IOException",ex);
           }
       }
       return result;
   }    
   public static void main(String[] args) {
System.out.println(RequestUtils.getInstence().httpGet(""));
   }
}

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值