京东OSS接入(使用AWS S3接口),理论上支持AWS S3接口通用

亡羊补牛
亡羊补牛 2019-05-28 08:05
阅读需:0

京东最近促销,买了做测试用还是不错的,OSS也是10GB免费,静态文件还是放OSS省心,外链访问,还不占用那可怜的服务器带宽,也可以把前端 的cdn放到oss上,下面开始:

假设你已经有京东账号

1、开通OSS服务,开通就可以了,后续创建bucket都自动创建


2、打开网页:https://docs.jdcloud.com/cn/object-storage-service/oss-endpont-list ,查看区域和端点对照表,等下配置京东OSS要使用


3、获取 

access-key  和  secret-key


点击京东控制台右上角用户名,进入账户管理。创建 Access Key,记下来


4、application.yml中添加jdoss 配置,endpoint 添加地区节点,bucket-name 存储空间名称全局唯一,如果京东已经存在同名的bucket,会创建失败,如果已经创建了bucket,直接填写你创建好的名字就可以了,region是bucket所在地区,这里是华东-上海区域


准备工作完成,开始代码部分


1、添加依赖,因为京东官方兼容AWS S3 api,所以依赖使用 Amazon S3 的SDK,最新版本 1.11.560

access-key  和  secret-key


2、modules 下创建一个oss包,添加 OssProperties 类,内容如下:

access-key  和  secret-key


3、创建自动配置类 JdossConfiguration

access-key  和  secret-key


4、创建JdossTemplate 类

access-key  和  secret-key

最后添加一个测试类,测试上传,这个原始文件是冷总pigx里的,现在除了版权信息,都不是了。。。

access-key  和  secret-key


测试上传成功,源码压缩包附件上传,有懒人直接拿去。


oss.rar

这个是因为bladex作者翼总在bladex里面写了一个OSS集成功能,支持多租户,我自己扩展了一下,顺便提取出来上传部分,在blade-boot版本测试下,有需要的朋友可以直接拿来扩展,因为使用的 AWS S3接口的SDK,理论上支持AWS S3接口都可以这么用。

评论
  • 消灭零回复