Java项目图片上传至七牛云对象存储

目录

1.购买七牛云对象存储(学生能免费试用1年40GB!新用户也有优惠)

2.新建空间

​3.查看官方文档,选择相应上传删除等方法,获取对应key和value,以上传为例

4.添加自定义域名


由于近期购买的云服务器挂载的云盘容量快使用完,于是决定将服务器的图片转存至七牛云中,简单记录一下主要步骤:

1.购买七牛云对象存储(学生能免费试用1年40GB!新用户也有优惠)

七牛云新客活动_CDN降价80%_对象存储降价50% - 七牛云官网

2.新建空间

3.查看官方文档,选择相应上传删除等方法,获取对应key和value,以上传为例

java 复制代码
public String upload(byte[]bytes,String fileName){
        //构造一个带指定 Region 对象的配置类
        Configuration cfg = new Configuration(Region.region0());
        cfg.resumableUploadAPIVersion = Configuration.ResumableUploadAPIVersion.V2;// 指定分片上传版本
        //...其他参数参考类注释
        UploadManager uploadManager = new UploadManager(cfg);
        //...生成上传凭证,然后准备上传
        String accessKey = accessKey;
        String secretKey = secretKey;
        String bucket = bucketName;
        //默认不指定key的情况下,以文件内容的hash值作为文件名,这里指定了输入的文件名
        String key = fileName;
        //            byte[] uploadBytes = "hello qiniu cloud".getBytes("utf-8");
        Auth auth = Auth.create(accessKey, secretKey);
        String upToken = auth.uploadToken(bucket);
        try {
            Response response = uploadManager.put(bytes, key, upToken);
            //解析上传成功的结果
            DefaultPutRet putRet = new Gson().fromJson(response.bodyString(), DefaultPutRet.class);
//            System.out.println(putRet.key);
//            System.out.println(putRet.hash);
            return putRet.key;//返回上传之后的文件名,加上域名前缀即可访问
        } catch (QiniuException ex) {
            ex.printStackTrace();
            if (ex.response != null) {
                System.err.println(ex.response);
                try {
                    String body = ex.response.toString();
                    System.err.println(body);
                } catch (Exception ignored) {
                }
            }
        }
        return null;
    }

4.添加自定义域名

这里用的是阿里云购买的域名,以此为例

首先绑定一个自定义域名,一般是自己购买的域名前面加上一个自定义前缀,绑定后复制CNAME

接下来去阿里云DNS域名解析页面进行设置

相关推荐
中年程序员一枚2 分钟前
Springboot报错Template not found For name “java/lang/Object_toString.sql
java·spring boot·python
幽络源小助理11 分钟前
PHP虚拟商品自动发卡系统源码 – 支持文章付费阅读与自动发货
开发语言·php
故事不长丨15 分钟前
C#集合:解锁高效数据管理的秘密武器
开发语言·windows·c#·wpf·集合·winfrom·字典
知识分享小能手18 分钟前
Ubuntu入门学习教程,从入门到精通,Ubuntu 22.04中的Java与Android开发环境 (20)
java·学习·ubuntu
南屿欣风26 分钟前
FeignClient 踩坑:@FeignClient 同时配 value 和 url 的 “无效服务名” 问题
java
superman超哥38 分钟前
Rust 内部可变性模式:突破借用规则的受控机制
开发语言·后端·rust·rust内部可变性·借用规则·受控机制
豆沙沙包?44 分钟前
2026年--Lc329-735. 小行星碰撞(栈)--java版
java·开发语言
weibkreuz1 小时前
收集表单数据@10
开发语言·前端·javascript
爆更小哇1 小时前
Selenium自动化测试函数全解析(二)
java·selenium·测试工具·自动化
C雨后彩虹1 小时前
计算误码率
java·数据结构·算法·华为·面试