SpringBoot的 ResponseEntity类讲解(具体讲解返回给前端的一些事情)

概述:ResponseEntity是Spring框架中的一个类,用于封装HTTP响应的相关信息,包括状态码、响应头和响应体。它通常用于控制器方法中返回一个包含特定数据的HTTP响应。

ResponseEntity

ResponseEntity类的主要特点如下:

  1. 可以自定义HTTP状态码:通过设置HttpStatus枚举值,可以指定不同的HTTP状态码,如200(OK)、404(Not Found)等。

  2. 可以设置响应头信息:可以通过headers()方法设置响应头信息,例如设置内容类型(Content-Type)或缓存控制(Cache-Control)等。

  3. 可以携带响应体数据:可以通过构造函数或body()方法设置响应体数据,支持各种数据类型,如字符串、对象、集合等。

比如说,想把图片从minio里面读取并反馈给前端

IOUtils用的是common那个包

复制代码
 @GetMapping("/user01/singer/img/{fileName:.+}")
    public ResponseEntity<byte[]> getImage(@PathVariable String fileName) throws Exception {
        InputStream stream = minioClient.getObject(
                GetObjectArgs.builder()
                        .bucket(bucketName)
                        .object("singer/img/"+fileName)
                        .build()
        );

        byte[] bytes = IOUtils.toByteArray(stream);

        HttpHeaders headers = new HttpHeaders();
        headers.setContentType(MediaType.IMAGE_JPEG); // 设置响应内容类型为图片类型,根据实际情况修改

        return new ResponseEntity<>(bytes, headers, HttpStatus.OK);
    }

当然,人们大多可能会封装一个类,以json的形式返回给前端

这个形式一般包含:

复制代码
private int code;
private String message;
private T  data

data一般是json信息,message一般就是成功,失败之类的,code就是那个码.

相关推荐
小兔子几秒前
no-cache 不是「不缓存」:RFC 9111 里几句常被读反的话
后端
雷一言说几秒前
Spring AI 2.0 Tool Search:工具多了,只把相关的发给模型
spring
Vecter1 分钟前
于 Spring Boot 和 LangChain4j 的 Web 智能助手
后端
张一凡935 分钟前
把“不要乱改”从提示词里拿出来,放进可校验的提案里
前端·后端·架构
一只爱撸猫的程序猿5 分钟前
当任何人都能生成一万行代码:什么变得稀缺
人工智能·后端·程序员
木子欢儿10 分钟前
Debian 13 + vsftpd 搭建FTP服务
linux·服务器·前端·网络·debian
leeguoo10 分钟前
让 Claude Code / Codex 用上你已登录的 Chrome
前端·chrome·ai编程
Potato_土豆11 分钟前
MCP Server 接入多个 AI 客户端:配置差异与 10 个真实踩坑
人工智能·后端·ai编程
SL_staff12 分钟前
运维救火实战:钉钉API变更致薪资计算中断,如何用可视化逻辑引擎5分钟热修复
java·开源·全栈
低调滴开发12 分钟前
3 行代码写崩一个函数?切片才是 Rust 字符串处理的正确姿势
开发语言·后端·rust