博客
关于我
Spring Boot程序 向其他API接口发送Http请求并接收返回结果
阅读量:267 次
发布时间:2019-03-01

本文共 1906 字,大约阅读时间需要 6 分钟。

引入RestTemplate

import org.springframework.web.client.RestTemplate;

创建HttpClient类

import org.springframework.http.*;import org.springframework.http.client.ClientHttpResponse;import org.springframework.util.MultiValueMap;import org.springframework.web.client.ResponseErrorHandler;import org.springframework.web.client.RestTemplate;/** * @author:WangZiBin * @description:http发送工具类 */public class HttpClient {       /**     * 向目的URL发送post请求     * @param url       目的url     * @param params    发送的参数     * @return  AdToutiaoJsonTokenData     */    public static String sendPostRequest(String url, MultiValueMap
params){ RestTemplate client = new RestTemplate(); //新建Http头,add方法可以添加参数 HttpHeaders headers = new HttpHeaders(); //设置请求发送方式 HttpMethod method = HttpMethod.POST; // 以表单的方式提交 headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED); //将请求头部和参数合成一个请求 HttpEntity
> requestEntity = new HttpEntity<>(params, headers); //执行HTTP请求,将返回的结构使用String 类格式化(可设置为对应返回值格式的类) ResponseEntity
response = client.exchange(url, method, requestEntity,String .class); return response.getBody(); } /** * 向目的URL发送get请求 * @param url 目的url * @param params 发送的参数 * @param headers 发送的http头,可在外部设置好参数后传入 * @return String */ public static String sendGetRequest(String url, MultiValueMap
params,HttpHeaders headers){ RestTemplate client = new RestTemplate(); HttpMethod method = HttpMethod.GET; // 以表单的方式提交 headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED); //将请求头部和参数合成一个请求 HttpEntity
> requestEntity = new HttpEntity<>(params, headers); //执行HTTP请求,将返回的结构使用String 类格式化 ResponseEntity
response = client.exchange(url, method, requestEntity, String.class); return response.getBody(); }}

转载地址:http://nqga.baihongyu.com/

你可能感兴趣的文章