`
qieyi28
  • 浏览: 152573 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

HttpClient 请求和接收

 
阅读更多

         最近要写一个简单的数据请求接口,嫌麻烦就直接用HttpClient来做了。

 

项目一的请求代码:

 

/**
  * TODO(httpClient请求 方法)
  * 
  * @param url  请求地址
  * @param data  需要传递的数据
  * @return JSONObject 

  */
 public static JSONObject post(String url, String jbody) {
  JSONObject json = new JSONObject();
  List<BasicNameValuePair> formParams = new ArrayList<BasicNameValuePair>();
  formParams.add(new BasicNameValuePair("request", jbody));
  HttpEntity entity = null;
  HttpEntity responseEntity=null;
  try {
   entity = new UrlEncodedFormEntity(formParams, "UTF-8");
   HttpPost request = new HttpPost(url);
   request.setEntity(entity);
   HttpResponse response = httpClient.execute(request);
   responseEntity = response.getEntity();
   String result = EntityUtils.toString(responseEntity);
   json = JSONObject.fromObject(result);
  } catch (UnsupportedEncodingException e) {
   e.printStackTrace();
  } catch (ClientProtocolException e) {
   e.printStackTrace();
  } catch (IOException e) {
   e.printStackTrace();
  } finally {
   EntityUtils.consumeQuietly(responseEntity);
  }
  return json;

 }

  

接收方项目的接收Action:

@RequestMapping("/findPhoneDist")
 @ResponseBody
 public  JSONObject findPhoneDist(ModelMap model,HttpServletRequest request,HttpServletResponse response){

//方法一:适用请求方只传递了一个参数
  System.out.println(request.getParameter("request"));

//方法二:实用于请求方传递了多个参数

  /*Enumeration en =request.getParameterNames();
   while (en.hasMoreElements()) {
             String paramName = (String) en.nextElement();
             String paramValue = request.getParameter(paramName);
             System.out.println("参数值:"+paramValue);
         }*/
  return null;
 }

  

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics