HttpRequestUtil

package com.sf.novatar.tpl.util;
import java.util.Map;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.params.CoreConnectionPNames;
import org.apache.http.util.EntityUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;


import com.sf.novatar.tpl.bean.PublicIntDto;
/**
 * 
 * 描述:java发送http的get、post请求
 * 
 * <pre>
 * HISTORY
 * ****************************************************************************
 *  ID   DATE           PERSON          REASON
 *  1    2017年5月5日        	80002253        Create
 * ****************************************************************************
 * </pre>
 * 
 * @author 80002253
 * @since 1.0
 */
public class HttpRequestUtil {
	private final static Logger logger = LoggerFactory.getLogger(HttpRequestUtil.class);
	/**
	 * 向指定 URL 发送POST方法的请求
	 * 
	 * @param url
	 *            发送请求的 URL
	 * @param param
	 *            请求参数,请求参数应该是json字符串。
	 * @return 所代表远程资源的响应结果
	 * @throws Exception
	 */
	public static Map<String, Object> sendPost(String url, String param) throws Exception {
		try {
			HttpPost httpost = new HttpPost(url);
			HttpClient defaultHttpClient = new DefaultHttpClient();
			StringEntity entity = new StringEntity(param, "UTF-8");
			entity.setContentEncoding("UTF-8");
			entity.setContentType("application/json");
			httpost.setEntity(entity);
			// 请求超时
			defaultHttpClient.getParams().setParameter(CoreConnectionPNames.CONNECTION_TIMEOUT, 3000);
			// 读取超时
			defaultHttpClient.getParams().setParameter(CoreConnectionPNames.SO_TIMEOUT, 5000);
			HttpResponse execute = defaultHttpClient.execute(httpost);
			String resultData = EntityUtils.toString(execute.getEntity(), "UTF-8");
			return JsonMapUtil.jacksonTransfer(resultData);
		} catch (Exception e) {
			logger.error("发送 POST 请求出现异常!" + e.getMessage());
			throw new Exception(e.getMessage());
		}
	}


	public static void main(String[] args) throws Exception {
		String url = "http://public-int-gw.intsit.sfdc.com.cn:1080/unp/notice/single";
		PublicIntDto dto = new PublicIntDto();
		dto.setUserId("15625284601");
		dto.setTemplateCode("ESG-EIMS-CORE-SHORT-MESSAGE");
		dto.setParam("{" + "'context':'xx'" + "}");
		dto.setMsgType("txt");
		// dto.setExpectedTime(new Date());
		dto.setAccessId("cwM8iF1o");
		dto.setAccessToken("2cd45597433c47078c5c15ef4f4147b2");
		sendPost(url, JsonUtils.objectToJson(dto));
	}
}

猜你喜欢

转载自blog.csdn.net/baidu_35761016/article/details/75529244