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

你可能感兴趣的文章
netty 主要组件+黏包半包+rpc框架+源码透析
查看>>
Vue过渡 & 动画---vue工作笔记0014
查看>>
Netty 异步任务调度与异步线程池
查看>>
Netty 的 Handler 链调用机制
查看>>
Netty 编解码器和 Handler 调用机制
查看>>
Netty 编解码器详解
查看>>
Netty 解决TCP粘包/半包使用
查看>>
Netty 调用,效率这么低还用啥?
查看>>
Netty 高性能架构设计
查看>>
Netty+Protostuff实现单机压测秒级接收35万个对象实践经验分享
查看>>
Netty+SpringBoot+FastDFS+Html5实现聊天App详解(一)
查看>>
netty--helloword程序
查看>>
netty2---服务端和客户端
查看>>
【Flink】Flink 2023 Flink易用性和稳定性在Shopee的优化-视频笔记
查看>>
Netty5.x 和3.x、4.x的区别及注意事项(官方翻译)
查看>>
netty——bytebuf的创建、内存分配与池化、组成、扩容规则、写入读取、内存回收、零拷贝
查看>>