Spring 之 RestTemplate VS WebClient 发送 HTTP请求

WebClient 依赖

  <dependency>
         <groupId>org.springframework.boot</groupId>
         <artifactId>spring-boot-starter-webflux</artifactId>
  </dependency>
WebClient 方法注解
block()阻塞式获取响应结果
subscribe()非阻塞式获取响应结果
exchange()获取HTTP响应完整内容:HTTP报文中的状态码、headers等信息
retrieve()只能获取HTTP报文中的Body

WebClient Post请求发送JSON字符串、对象、表单数据

RestTemplate Post请求发送JSON字符串、对象、表单数据

	@Test
    void contextLoads3() {
        RestTemplate restTemplate = new RestTemplate();
        restTemplate.getMessageConverters().set(1, new StringHttpMessageConverter(StandardCharsets.UTF_8));
        //设置请求头
        HttpHeaders headers = new HttpHeaders();
        //设置参数
        LinkedMultiValueMap<String, Object> body = new LinkedMultiValueMap();

        body.add("tel", "15333065057");
        HttpEntity<LinkedMultiValueMap<String, Object>> entity = new HttpEntity(body, headers);
        //请求接口,并接收返回的信息
        String s = restTemplate.exchange("http://jsonplaceholder.typicode.com/posts", HttpMethod.POST, entity, String.class).getBody();

        System.out.println(s);
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值