OSS服务端签名后直传
使用应用程序上传文件的缺点
- 慢: 先将文件发送至后端 在由后端调用阿里oss进行上传 而直传没有中转这一步 直接拿着密钥 调用oss进行上传
- 扩展性差: 若之后用户增多 增大后端服务器的压力
- 费用高: 因为oss上传上行流量是不收费的 直传oss 可以省去应用服务器的费用
服务端使用
首先导入包并配置好key 和 endpoint bucket
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>aliyun-oss-spring-boot-starter</artifactId>
</dependency>
导入net.sf.json-lib 这个包的最后版本更新的时候jdk为1.5 所以还要指定jdk版本
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<classifier>jdk15</classifier>
</dependency>
文档地址: https://help.aliyun.com/document_detail/91868.htm?spm=a2c4g.11186623.0.0.16072214bdo6s4#concept-ahk-rfz-2fb
可以自定义文件上传前缀
根据文档复制粘贴即可 若后端已经配置过跨域请求 得把最后两句删掉 否则跨域重复会报错
服务端返回的密钥
前端调用
文件上传需要以下几项数据 大部分可以从后端请求到
success_action_status 若不设置 上传成功状态码为204 key为文件名称 前缀必须为dir
policyData: {
OSSAccessKeyId: '',
policy: '',
signature: '',
key: '',
success_action_status: 200
}
设置上传的请求体
在上传组件中定义要携带的数据
action 为policy中的host
虽然道路是曲折的,但前途是光明的。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律