HttpClient 4.x的工具类及调用

1.工具类代码

package com.common.util;

import java.net.URI;
import java.util.List;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;

public static class HttpClientUtils {
	
	private HttpClient hc=new DefaultHttpClient();
	

	/**
	 * get请求
	 * @param url
	 * @param params
	 * @return
	 */
	public String getM(String url, List<NameValuePair> params){
		try {
			//get请求
			HttpGet get=new HttpGet();
			//设置参数
			get.setURI(new URI(url+"?"+EntityUtils.toString(new UrlEncodedFormEntity(params))));
			//发送请求
			HttpResponse response=hc.execute(get);
			//返回数据
			HttpEntity entity=response.getEntity();
			
			return EntityUtils.toString(entity);
			
		} catch (Exception e) {
			e.printStackTrace();
		}
		return "";
	}
	
	/**
	 * post提交
	 * @return
	 */
	public String postM(String url, List<NameValuePair> params){
		try {
			//post请求
			HttpPost post=new HttpPost(url);
			//设置参数
			post.setEntity(new UrlEncodedFormEntity(params));
			//发送请求
			HttpResponse response=hc.execute(post);
			//返回数据
			HttpEntity entity=response.getEntity();
			
			return EntityUtils.toString(entity);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return "";
		
	} 

}


2.工具类调用(以天翼web短信接口为实例):

	
	    List<NameValuePair> params=new ArrayList<NameValuePair>();
	    params.add(new BasicNameValuePair("grant_type", "client_credentials"));
	    params.add(new BasicNameValuePair("app_id", "402573760000031756"));
	    params.add(new BasicNameValuePair("app_secret", "a0d154417fa3ad0c8fd230de6029beb1"));
	    String acc_url="https://oauth.api.189.cn/emp/oauth2/v2/access_token";
	    JSONObject object=JSONObject.fromObject(HttpClientUtils.postM(acc_url, params));
	    if(object.get("res_code").toString().equals("0")){
	         //信任码
	    	 String acc_token=object.get("access_token").toString(); 
	    	 //清空参数
	    	 params.clear();
	    	 
	    	 params.add(new BasicNameValuePair("access_token", acc_token));
	    	 params.add(new BasicNameValuePair("app_id", "402573760000031756"));
	    	 
	    	 String sms_url="http://api.189.cn/surfingSms/sendWebSms";
	    	 System.out.println(HttpClientUtils.getM(sms_url, params));
	    }else{
	    	System.out.println("error:"+object.get("res_message").toString());
	    }


DONE!


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值