文件上传到七牛云OSS

七牛云OSS使用方法

  • 七牛云OSS有10G的免费流量,但是默认的域名只通用一个月
  • 这里是Java的演示

准备工作

  • 进入七牛官网,实名认证后
  • 存储空间 --> 新建存储空间

在这里插入图片描述

  • 新建空间,起个名字
  • 区域尽量选择近一点的
  • 访问控制一定要选择公开,这里的访问控制只是读取,不是改动
  • 点击文件管理进入文件列表
  • 会提供一个默认的域名(只能用一个月)

上传文件

 <dependency>
     <groupId>com.qiniu</groupId>
     <artifactId>qiniu-java-sdk</artifactId>
     <version>[7.7.0, 7.10.99]</version>
 </dependency>

查看示例

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

获取密钥

在这里插入图片描述

编写代码

  • 配置密钥
  • 在springboot配置文件中加入以下
  • 存储空间支持多级目录,设置存储文件名时用/分隔,比如:file/img/a.jpg
oss:
  accessKey: 你的accessKey
  secretKey: 你的secretKey
  bucket: 你的存储空间名称
  # 访问域名
  urlPrefix: 你的默认域名

@Service
public class UploadServiceImpl implements UploadService {

    @Override
    public ResponseResult uploadImg(MultipartFile img) {
        String filename = img.getOriginalFilename();
        String url = uploadOss(img, "img/" + filename);
        return ResponseResult.okResult(url);
    }

    @Value("${oss.accessKey}")
    private String accessKey;
    @Value("${oss.secretKey}")
    private String secretKey;
    @Value("${oss.bucket}")
    private String bucket;
    @Value("${oss.urlPrefix}")
    private String urlPrefix;

    private String uploadOss(MultipartFile img, String uploadPath) {
        Configuration cfg = new Configuration(Region.autoRegion());
        UploadManager uploadManager = new UploadManager(cfg);
		
		// 存储文件名
        String key = uploadPath;

        try {
        	// 获取文件的输入流
            InputStream inputStream = img.getInputStream();
            Auth auth = Auth.create(accessKey, secretKey);
            String upToken = auth.uploadToken(bucket);
            try {
            	// 用文件流存储
                Response response = uploadManager.put(inputStream, key, upToken,null, null);
                DefaultPutRet putRet = new Gson().fromJson(response.bodyString(), DefaultPutRet.class);
               	// 返回图片的访问路径
                return urlPrefix + key;
            } catch (QiniuException ex) {
                Response r = ex.response;
                System.err.println(r.toString());
                try {
                    System.err.println(r.bodyString());
                } catch (QiniuException ex2) {
                }
            }
        } catch (Exception ex) {
        }

        return "";
    }

}

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: Delphi七牛云OSS是一种适用于Delphi编程语言的七牛云对象存储服务的开发工具包。它提供了一系列功能,以简化开发人员在Delphi环境中使用七牛云OSS的操作。 首先,Delphi七牛云OSS支持断点上传和下载。这意味着我们可以在传输过程中暂停和恢复文件的上传和下载,从而避免因网络中断或其他原因导致的文件传输失败。这对于大文件的上传和下载非常有用,并可以节省时间和带宽。 其次,Delphi七牛云OSS提供了Bucket管理功能。Bucket是七牛云OSS中的存储空间,我们可以使用Delphi七牛云OSS来创建、删除、查询和修改Bucket。这使得我们可以方便地管理和组织我们的数据。 此外,Delphi七牛云OSS还支持目录的创建和删除。我们可以使用它来在Bucket中创建文件夹,并根据需要随时删除这些文件夹。这样有助于我们更好地组织和管理文件。 最后,Delphi七牛云OSS还提供了文件的复制和移动功能。我们可以使用它来复制和移动文件,方便地在不同的Bucket或目录之间进行文件的迁移和拷贝。 总的来说,Delphi七牛云OSS为Delphi开发人员提供了一个方便、高效的工具包,可以帮助我们更好地使用七牛云OSS的各种功能,包括断点上传下载、Bucket管理、目录创建删除、复制移动文件等。通过使用这个工具包,我们可以更轻松地开发出高质量的应用程序,并且更好地管理和操作七牛云OSS中的数据。 ### 回答2: Delphi七牛云OSS是一种使用Delphi编程语言开发的开源项目,用于实现与七牛云对象存储服务(OSS)进行交互的功能。它提供了断点上传下载、bucket管理、目录创建删除、复制移动文件等操作。 在Delphi七牛云OSS中,断点上传下载是指在上传或下载文件过程中,如果出现网络中断或其他意外情况,可以继续上次上传或下载的进度,从断点处恢复,避免重新上传或下载整个文件。 Bucket是七牛云OSS中用于存储文件的容器,Delphi七牛云OSS提供了bucket的管理功能,可以通过代码创建、删除、获取bucket的信息等操作。 目录的创建和删除是指在bucket中创建和删除文件夹,可以通过Delphi七牛云OSS的接口来实现对目录的操作。 Delphi七牛云OSS还支持文件的复制和移动功能,可以将文件从一个bucket复制到另一个bucket,或者将文件移动到指定的路径。 使用Delphi七牛云OSS,开发者可以方便地将七牛云OSS的功能集成到自己的Delphi应用程序中,实现文件存储和管理的需求。除了上述提到的功能,Delphi七牛云OSS还提供了其他丰富的接口和功能,如文件的上传、下载、删除、查看、重命名等操作,开发者可以根据自己的需求进行调用和使用。 总之,Delphi七牛云OSS是一个功能强大的开源项目,通过它可以实现与七牛云OSS的交互,支持断点上传下载、bucket管理、目录创建删除、复制移动文件等功能,为开发者提供了便捷的文件存储和管理解决方案。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值