Java模拟httpGet请求并获取返回的数据

本文介绍了如何使用Java进行HTTP GET请求,并详细解析获取的返回数据。通过示例代码,展示了完整的请求过程和响应处理方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.代码实例如下:

public class HttpgetUtils {

	public static String sendGETRequest(String path, Map
   
   
    
     params, String ecoding) throws Exception{  
		//拼接GET参数条件
	    StringBuilder url = new StringBuilder(path);  
	    url.append("?");  
	    for(Map.Entry
    
    
     
      entry : params.entrySet()){  
	        url.append(entry.getKey()).append("=");  
	        url.append(URLEncoder.encode(entry.getValue(), ecoding));  
	        url.append("&");  
	    }  
	    url.deleteCharAt(url.length() - 1);
	    //发起请求
	    HttpURLConnection conn = (HttpURLConnection)new URL(url.toString()).openConnection();  
	    conn.setConnectTimeout(5000);  
	    conn.setRequestMethod("GET");
	    if(conn.getResponseCode() == 200){
	    	//获取请求返回来的结果-【这是返回Str的情况Json的基本同理,把返回来的json字符串转换成Json对象就行了】
			StringBuffer buffer = new StringBuffer();
			InputStream inputStream = conn.getInputStream();  
			InputStreamReader inputStreamReader = new InputStreamReader(inputStream, "utf-8");  
			BufferedReader bufferedReader = new BufferedReader(inputStreamReader);  	  
			String str = null;  
			while ((str = bufferedReader.readLine()) != null) {  
				buffer.append(str);  
			}  
			bufferedReader.close();  
			inputStreamReader.close();  
			// 释放资源  
			inputStream.close();  
			inputStream = null;  
			conn.disconnect();
			return buffer.toString(); 
	    }  
	    return null;  
	}
	
}
    
    
   
   

2.测试实例:
public class Test {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		String path ="XXXXXX"; 
		Map
    
    
     
      map = new HashMap
     
     
      
      () {{ 
	        put( "FileName" , "monitor" );
	        put( "wantedOne" , "2017-10-30 14:47" );
	        put( "wantedTwo" , "192.168.30.244" );
		}}; 
		String ecoding ="UTF-8";
		try {
			String Str =HttpgetUtils.sendGETRequest(path,map,ecoding);
			System.out.println(Str);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

}
     
     
    
    
3.结果:



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值