直接貼已完成代碼
public PayResponse payHttpRequest( MultiValueMap<String, String> params, String signature){
RestTemplate restTemplate = new RestTemplate();
HttpHeaders httpHeaders = new HttpHeaders();
HttpMethod method = HttpMethod.POST;
httpHeaders.setContentType(MediaType.APPLICATION_FORM_URLENCODED);
params.add("appKey",appKey);
params.add("secret",signature);
HttpEntity<MultiValueMap<String, String>> requestEntity = new HttpEntity<MultiValueMap<String, String>>(params, httpHeaders);
//執行HTTP請求
try{
ResponseEntity<PayResponse> response = restTemplate.postForEntity(orderCreateUrl, requestEntity, PayResponse.class);
return response.getBody();
}catch (Exception e){
return null;
}
}
1.HttpEntity最好使用MultiValueMap進行發起,不然容易出錯
2.restTemplate.postForEntity(orderCreateUrl, requestEntity, PayResponse.class) 中的元類,會在得到response響應后根據對應的類進行數據解析,不要用Object直接去解析,后續會很難處理