java 從程式內部呼叫外部url/介面
本人微信 zf363133213 歡迎各位新增好友,共同探討問題
第一種方法:
public Object test(){
HttpHeaders headers = new HttpHeaders();//http請求頭
RestTemplate restTemplate = new RestTemplate();
headers.setContentType(MediaType.parseMediaType("application/json;charset=UTF-8"));
headers.add("versionNo","123");
Map<String,Object> body = new HashMap<>();//請求body
body.put("carNo","123");
HttpEntity<Map<String,Object>> requestEntity=new HttpEntity<Map<String,Object>>(body,headers);
Map<String,Object> map = restTemplate.postForObject("http://test/get",requestEntity,Map.class);
//String jsonStr =restTemplate.postForObject("http://test/get",requestEntity,String.class);
retrurn map;
}
第二種方法:
public Object test(){
Map<String,Object> content =new HashMap<String,Object>();
content.put("carNo","123");//請求引數
HttpClient httpClient = new HttpClient();
PostMethod post = new PostMethod("http://test/get");
post.addRequestHeader("appId","123");
post.addRequestHeader("content-type","application/json;charset=utf-8");
RequestEntity entity =new StringRequestEntity(JSONObject.toJSONString(content),"application/json;charset=utf-8","utf-8");
post.setRequestEntity(entity);
httpclient.executeMethod(post);
String info=new String(post.getResponseBody(),"utf-8");
return info;
}