首页
首页 教程 派聪明
  • 首页
  • 教程
  • 派聪明
  • 登录
登录技术派畅享更多权益

用户名密码登录

其他登录:
icon_GitHubCreated with sketchtool.
绑定星球,畅享VIP服务

微信扫码/长按识别登录

输入验证码
有效期五分钟 👉 手动刷新

登录即同意 用户协议 和 隐私政策

绑定二哥编程星球,畅享 VIP 尊享服务!

戳我了解如何获取星球编号,新窗口打开

添加二哥微信 itwanger 审核更快

记得备注 星球编号
我会根据星球编号进行审核
1
如何学习技术派?
更新时间: 2023年11月28日
星球
2
技术派的架构设计是什么样的?
更新时间: 2023年03月22日
星球
3
如何整合本地缓存 Caffeine?
更新时间: 2023年03月15日
星球
4
整合 RabbitMQ
更新时间: 2023年05月15日
星球
5
给 RabbitMQ 添加连接池
更新时间: 2023年05月23日
星球
6
如何保证缓存一致性?
更新时间: 2023年05月15日
星球
7
如何实现在线人数统计?
更新时间: 2023年03月25日
星球
8
MySQL同步ES
更新时间: 2023年06月09日
星球
9
redis实现活跃排行榜
更新时间: 2023年08月21日
星球
10
实例演示如何实现性能优化
更新时间: 2023年08月30日
星球
11
十二种性能优化方案实战
更新时间: 2023年11月21日
星球
12
配置 SSL 证书
更新时间: 2023年11月21日
星球
13
ngrok内网穿透访问本地服务
更新时间: 2023年12月01日
星球
14
上传图片至 OSS
更新时间: 2023年12月04日
星球
15
如何渲染 markdown
更新时间: 2023年12月20日
星球
16
如何将技术派写到简历上?
更新时间: 2023年11月10日
星球
17
技术派的 Redis 分布式锁
更新时间: 2024年10月22日
星球
18
Linux 一键源码部署技术派
更新时间: 2024年11月12日
星球
19
如何接入微信支付?
更新时间: 2024年12月11日
星球
20
整合FastExcel导出500万条数据
更新时间: 2024年12月19日
星球
21
接入 deepseek API
更新时间: 2025年02月07日
星球
22
ACM 自动续签 SSL 证书
更新时间: 2025年06月14日
星球
23
技术派微信公众号自动登录
更新时间: 2025年07月29日
星球
关注公众号
原创
技术派如何实现图片上传至 OSS ?复制粘贴上传图片、图片自动转链

大家好,我是二哥呀。技术派的教程中一直缺一篇,图片如何上传至阿里云的 OSS 服务器,虽然是一篇很基础的内容,但总这么缺着总有球友找我要,所以还是写一篇吧。

但我会结合技术派 admin 端的业务来写,比如说:

  • 图片如何复制粘贴即可完成上传?
  • 图片如何自动转链(外链转为内链,否则无法访问)?
  • 图片如何防止 30s 内重复上传?
  • 服务端如何利用 Guava Cache 提高图片上传的效率?
  • 配置文件更新时自动初始化阿里云 Client?
  • 如何通过开关自由切换本地图片服务还是阿里云 OSS 服务?

什么是 OSS?

OSS 也就是 Object Storage Service,是阿里云提供的一套对象存储服务,国内的竞品还有七牛云的 Kodo 和腾讯云的 COS。

由于技术派最新的服务器是腾讯云的香港服务器,为了提升服务器到 OSS 之间的传输效率,我本来是打算使用腾讯云的 COS,但开通后发现用起来很麻烦,不如阿里云的 OSS 来得方便,所以也就没有迁移。

之所以要迁移,是因为阿里云上有这么一个规定:

OSS 的 Bucket 在华东 1 (杭州),客户端(比如说技术派的服务器)所在地域为中国香港,这类场景客户端会受到跨墙连路,速度就会比较慢。

通过后台 StopWatch 日志(后面专门出篇教程来讲)打印观察到,技术派的图片上传瓶颈就是因为这个原因,很扯淡(😂)。

但不能不用!

OSS 存储比服务器端存储还是要方便很多,并且容易管理。即便是服务器迁移了,OSS 依然还能用,技术派的服务器就做过这么一个迁移。

阿里云丐版服务器(三年 200 多人民币屯的)→ 亚马逊服务器(太贵,一个月近 1000 人民币)→ 腾讯云香港地区(三年 3300 多人民币)

开通 OSS

OSS 本身还算是比较便宜的,一个月可能也就几块钱吧,我这边 100GB 中国大陆 标准版 一个月 续费价格是 11 块,不过我一般都是直接续费一年。

OK,开通 OSS 资源包后,直接进入 OSS 的管理控制台,点击「Bucket 列表」,点击「创建 Bucket」。

Bucket 的词面意思是桶,这里指存储空间,就是用于存储对象的容器。注意读写权限为“公共读”(如果配置 CDN 的话,可以设置为私有),也就是允许互联网用户访问云空间上的图片。

点击「确定」就算是开通成功了。

开通之后,记得从 RAM(Resource Access Management) 访问控制这里拿到 accesskey ID 和 accesskey secret,这两个是访问阿里云 API 钥匙,有这两个就可以访问阿里云账户的所有权限,所以要妥善保管,千万不要泄露。

我之前做编程喵的时候,为了方便球友们使用 OSS 就直接给了个别球友,结果被泄露了出去(惨,大家都没有这个安全意识),但好就好在,RAM 用户创建后可以销毁重新创建一个新的,旧的就不起效了。

注意拿到这两个关键配置后,还需要再拿到另外两个配置:Endpoint(地域节点) 和 Bucket(桶名)。

那到这,OSS 的前期准备就完成了。

新增 OSS 配置文件

技术派的图片配置文件是在 application-image.yml 文件中,这样可以和其他配置信息很好的隔离开。

已加入二哥编程星球,即刻绑定星球编号解锁🔐

该文档仅「二哥编程星球」的VIP用户可见

二哥的编程星球内容包括:

1. 付费文档: 技术派、MYDB 等项目配套的 120+篇教程查看权限

2. 面试指南: 校招、社招的 40 万+字面试求职攻略

3. 智能助手: 无限期使用派聪明 AI 助手,已对接讯飞星火和 ChatGPT双通道,不用花 1 分钱

4. 专属问答: 向二哥 1v1 发起提问,内容不限于 offer 选择、学习路线、职业规划等

5. 简历修改: 提供简历修改服务,附赠星球 100+优质简历模板可供参考

6. 学习环境: 打造一个沉浸式的学习环境,有一种高考冲刺、大学考研的氛围


二哥的星球

》步骤①:微信扫描上方二维码,点击「加入知识星球」按钮

》步骤②:访问星球置顶帖球友必看: https://t.zsxq.com/11rEo9Pdu,获取项目配套文档的语雀访问地址和密码

已加入星球,绑定星球编号
删除提醒

确定删除《技术派如何实现图片上传至 OSS ?复制粘贴上传图片、图片自动转链》吗

3人已点赞

回复