httpclient Post请求

1、使用httpclient请求服务?

2、需要的java包

	private static Logger log = Logger.getLogger(ServiceLink.class);
	private static HttpClient client = new HttpClient();
	private static boolean flog=true;
	
	
	
	
	/**
	 * post请求方法  传递地址 、数据
	 * @param url
	 * @param datas
	 * @return
	 */
	public static String getPostMethodWrite(String url,String datas){
		
		 if(flog){
			 
			 flog=false;
			 PostMethod postMethod = new PostMethod(url);
			 //设置参数编码为utf-8
			 postMethod.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET,"UTF-8");
			 //构造键值对参数
			 NameValuePair[] data = { new NameValuePair("data", datas)}; 
			 // 把参数值放入postMethod中 
			 postMethod.setRequestBody(data);
			 //执行
			 try {
				client.executeMethod(postMethod);
				 //读取内容
			     byte[] responseBody = postMethod.getResponseBody();
			     //处理内容
//			     System.out.println(new String(responseBody));
//			         System.out.println("statusCode:"+statusCode);
			         //打印结果页面
			         String response =  new String(postMethod.getResponseBodyAsString().getBytes("utf-8"));
			        //打印返回的信息
			         log.info("response:"+response);
			         return response;
			 //释放连接
			
			} catch (HttpException e) {

				ErrorPrint.sprintLog(e, log,"http协议异常");
				e.printStackTrace();
				return "";
				
			} catch (IOException e) {
				ErrorPrint.sprintLog(e, log,"流异常");
				log.error("流异常", e);
				e.printStackTrace();
				return "";
			} finally{
				 postMethod.releaseConnection();
				 flog=true;
			}
		 }
		 return "";
	}

?

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。