第一步
@Service
public class HttpClient {
public JSONObject client(String url, HttpMethod method, MultiValueMap<String,String> params){
// RestTemplate template=new RestTemplate();
RestTemplate template = restTemplate();
ResponseEntity<String> response1=template.getForEntity(url,String.class);
return JSONObject.parseObject(response1.getBody());
}
// 解决乱码问题
public RestTemplate restTemplate() {
RestTemplate restTemplate = new RestTemplate();
//消息转换器列表
List<HttpMessageConverter<?>> messageConverters = restTemplate.getMessageConverters();
//配置消息转换器StringHttpMessageConverter,并设置utf-8
messageConverters.set(1,
new StringHttpMessageConverter(StandardCharsets.UTF_8));//支持中文字符集,默认ISO-8859-1,支持utf-8
return restTemplate;
}
}
第二步 调用
/**
* 后端请求url的json文件
*/
@RequestMapping(value = "/getNumber")
public JSONObject getNumber(){
String url = "https://xxxxxx";
HttpMethod method = HttpMethod.GET;
MultiValueMap<String,String> params = new LinkedMultiValueMap<>();
System.out.println("url"+url);
return httpClient.client(url,method,params);
}
done