用spring发送http请求

简介: 用spring发送http请求


在Spring中,你可以使用RestTemplateWebClient来发送HTTP请求。下面分别给出使用这两个类的简单示例。

现在pom.xml中导入依赖

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <version>2.6.0</version> <!-- Specify the version of Spring Boot -->
</dependency>
<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-webflux</artifactId>
            <version>2.6.0</version> <!-- Specify the version of Spring Boot -->
</dependency>

1. 使用 RestTemplate:

import org.springframework.http.ResponseEntity;
import org.springframework.web.client.RestTemplate;
public class HttpRequestExample {
    public static void main(String[] args) {
        // 创建 RestTemplate 实例
        RestTemplate restTemplate = new RestTemplate();
        // 设置请求 URL
        String url = "https://api.example.com/data";
        // 发送 GET 请求,并获取响应
        ResponseEntity<String> responseEntity = restTemplate.getForEntity(url, String.class);
        // 获取响应体
        String responseBody = responseEntity.getBody();
        // 处理响应
        System.out.println("Response: " + responseBody);
    }
}

2、使用 WebClient:

import org.springframework.web.reactive.function.client.WebClient;
public class HttpRequestExample {
    public static void main(String[] args) {
        // 创建 WebClient 实例
        WebClient webClient = WebClient.create();
        // 设置请求 URL
        String url = "https://api.example.com/data";
        // 发送 GET 请求,并获取响应
        String responseBody = webClient.get()
                .uri(url)
                .retrieve()
                .bodyToMono(String.class)
                .block();
        // 处理响应
        System.out.println("Response: " + responseBody);
    }
}

相关文章
|
7天前
|
存储 缓存 安全
第二章 HTTP请求方法、状态码详解与缓存机制解析
第二章 HTTP请求方法、状态码详解与缓存机制解析
|
6天前
|
JSON Java 数据安全/隐私保护
java中的http请求的封装(GET、POST、form表单、JSON形式、SIGN加密形式)
java中的http请求的封装(GET、POST、form表单、JSON形式、SIGN加密形式)
|
7天前
|
Web App开发 存储 缓存
第八篇 提升网页性能:深入解析HTTP请求优化策略(三)
第八篇 提升网页性能:深入解析HTTP请求优化策略(三)
|
7天前
|
消息中间件 前端开发 JavaScript
第七篇 提升网页性能:深入解析HTTP请求优化策略(二)
第七篇 提升网页性能:深入解析HTTP请求优化策略(二)
|
7天前
|
缓存 自然语言处理 前端开发
第一章 引言-HTTP协议基础概念和前后端分离架构请求交互概述
第一章 引言-HTTP协议基础概念和前后端分离架构请求交互概述
|
8天前
状态码对于理解HTTP请求和响应的流程,以及调试网络问题非常重要
【5月更文挑战第15天】HTTP状态码由三位数字表示,分为1xx-5xx五类。1xx为信息响应,2xx表示成功,如200(请求成功)、201(创建成功)。3xx是重定向,如301(永久移动)、302(临时重定向)。4xx表示客户端错误,如400(坏请求)、404(未找到)。5xx是服务器错误,包括500(内部服务器错误)和503(服务不可用)。这些状态码用于理解请求响应流程和调试网络问题。
16 1
|
6天前
|
缓存 前端开发 JavaScript
React和Next.js开发常见的HTTP请求方法
React和Next.js开发常见的HTTP请求方法
9 0
|
6天前
|
自然语言处理 负载均衡 监控
处理HTTP请求的服务器
处理HTTP请求的服务器
18 1
|
7天前
|
编解码 前端开发 JavaScript
第六篇 提升网页性能:深入解析HTTP请求优化策略(一)
第六篇 提升网页性能:深入解析HTTP请求优化策略(一)
|
7天前
|
JSON 前端开发 JavaScript
第三章 前端发起HTTP请求
第三章 前端发起HTTP请求