现在的系统开发越来越简单。例如,对接支付宝,我们有 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。
: » 七牛云 Java SDK 使用教程
原创文章,作者:端木书台,如若转载,请注明出处:https://blog.ytso.com/252000.html