Java基础、中级、高级、架构面试资料

七牛云 Java SDK 使用教程

JAVA herman 5996浏览
公告:“业余草”微信公众号提供免费CSDN下载服务(只下Java资源),关注业余草微信公众号,添加作者微信:xttblog2,发送下载链接帮助你免费下载!
本博客日IP超过2000,PV 3000 左右,急需赞助商。
极客时间所有课程通过我的二维码购买后返现24元微信红包,请加博主新的微信号:xttblog2,之前的微信号好友位已满,备注:返现
受密码保护的文章请关注“业余草”公众号,回复关键字“0”获得密码
所有面试题(java、前端、数据库、springboot等)一网打尽,请关注文末小程序
视频教程免费领
腾讯云】1核2G5M轻量应用服务器50元首年,高性价比,助您轻松上云

现在的系统开发越来越简单。例如,对接支付宝,我们有 alipay-java-sdk;对接微信支付有微信支付的 SDK;对接友盟有友盟的 um-push-sdk;对接七牛云我们有七牛云的 qiniu-java-sdk!

一切的一切都在表明,开发正在简单化,傻瓜化。只有我对接顺丰等一些传统行业才会一行一行的艰难的去调试,去探索如何适应它们的接口。

七牛云的 Java SDK 使用起来非常的简单。官方提供的 SDK 对应的 Java 有不同的版本。如果你是 jdk 1.6,则可以使用七牛云提供的 6.x 版本的 sdk。目前我是 jdk1.8,我使用的是七牛云最新版本的 sdk。

使用七牛云 qiniu-java-sdk,首先你肯定要有一个七牛云的账号,可以到这里进行注册:https://portal.qiniu.com/signup?code=3li4q6au9pqaa。注册完成之后,到你的 https://portal.qiniu.com/user/key 个人中心查看 AccessKey 和 SecretKey,这两个 key 在后面我们会用到。一个账号最多拥有两对密钥(Access/Secret Key);更换密钥时,请创建第二个密钥;删除密钥前须停用;出于安全考虑,建议您周期性地更换密钥。

然后我们可以到七牛云的开发者中心下载对应版本的 Java SDK:https://developer.qiniu.com/kodo/sdk/1239/java。或者我们直接在 Maven 中引入七牛云的 Java SDK:

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

七牛云提供的 SDK 中包含这些组件:qiniu-java-sdk、happy-dns-java、okhttp3、okio、gson、junit。

七牛 Java SDK 的所有的功能,都需要合法的授权。授权凭证的签算需要七牛账号下的一对有效的 Access Key 和 Secret Key。

七牛文件上传分为客户端上传(主要是指网页端和移动端等面向终端用户的场景)和服务端上传两种场景。服务端SDK在上传方面主要提供两种功能,一种是生成客户端上传所需要的上传凭证,另外一种是直接上传文件到云端。客户端(移动端或者Web端)上传文件的时候,需要从客户自己的业务服务器获取上传凭证,而这些上传凭证是通过服务端的SDK来生成的,然后通过客户自己的业务API分发给客户端使用。根据上传的业务需求不同,七牛云Java SDK支持丰富的上传凭证生成方式。目前大多数公司都是使用的客户端上传凭证这种方法。获取凭证的代码如下:

String accessKey = "access key";
String secretKey = "secret key";
String bucket = "bucket name";

Auth auth = Auth.create(accessKey, secretKey);
String upToken = auth.uploadToken(bucket);
System.out.println(upToken);

默认情况下,文件上传到七牛之后,在没有设置 returnBody 或者回调相关的参数情况下,七牛返回给上传端的回复格式为 hash 和 key,例如:

{"hash":"Ftgm-CkWePC9fzMBTRNmPMhGBcSV","key":"qiniu.jpg"}

其实还可以自定义返回哪些内容,比如:bucket 和 fsize 等。

拿到 hash 后,我们就可以外链到七牛云的图片或者文件等。Java SDK 还提供了非常丰富的 API,比如:断点续传,CDN加速,防盗链访问等操作。具体的建议大家参考七牛云的开发者中心进行学习:https://developer.qiniu.com/kodo/sdk/1239/java

业余草公众号

最后,欢迎关注我的个人微信公众号:业余草(yyucao)!可加作者微信号:xttblog2。备注:“1”,添加博主微信拉你进微信群。备注错误不会同意好友申请。再次感谢您的关注!后续有精彩内容会第一时间发给您!原创文章投稿请发送至532009913@qq.com邮箱。商务合作也可添加作者微信进行联系!

本文原文出处:业余草: » 七牛云 Java SDK 使用教程