博客
关于我
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/

你可能感兴趣的文章
MySql的CRUD(增、删、改、查)操作
查看>>
MySQL的DATE_FORMAT()函数将Date转为字符串
查看>>
mysql的decimal与Java的BigDecimal用法
查看>>
MySql的Delete、Truncate、Drop分析
查看>>
MySQL的Geometry数据处理之WKB方案
查看>>
MySQL的Geometry数据处理之WKT方案
查看>>
mysql的grant用法
查看>>
Mysql的InnoDB引擎的表锁与行锁
查看>>
mysql的InnoDB引擎索引为什么使用B+Tree
查看>>
MySQL的InnoDB默认隔离级别为 Repeatable read(可重复读)为啥能解决幻读问题?
查看>>
MySQL的insert-on-duplicate语句详解
查看>>
mysql的logrotate脚本
查看>>
MySQL的my.cnf文件(解决5.7.18下没有my-default.cnf)
查看>>
MySQL的on duplicate key update 的使用
查看>>
MySQL的Replace用法详解
查看>>
mysql的root用户无法建库的问题
查看>>
mysql的sql_mode参数
查看>>
MySQL的sql_mode模式说明及设置
查看>>
mysql的sql执行计划详解
查看>>
mysql的sql语句基本练习
查看>>