上手七牛云存储-阿里云开发者社区

开发者社区> netwild> 正文

上手七牛云存储

简介: 早就听说过七牛云存储,终于有时间上手实践。   1、第一步,注册七牛账号,由于是测试,首先申请的是个人账号   2、注册成功之后,默认是体验账号,每月只有1G的空间容量及1G的下载流量         3、账号认证,认证成功之后将升级为标准账号,每月有10G的空间容量及20G的下载流量       虽然认证麻烦了些,但看得出来,七牛还是很良心的,这种免费套餐对于一般的小型网站应用来说应该是足够了 说明一下,认证表单里,有一个“个人网址”的文本框,一开始我以为是空间的自定义域名,后来试了一下,应该就是个人网站地址,可以随便填,不影响使用。
+关注继续查看

早就听说过七牛云存储,终于有时间上手实践。

 

1、第一步,注册七牛账号,由于是测试,首先申请的是个人账号

 

2、注册成功之后,默认是体验账号,每月只有1G的空间容量及1G的下载流量

     

 

3、账号认证,认证成功之后将升级为标准账号,每月有10G的空间容量及20G的下载流量

     

虽然认证麻烦了些,但看得出来,七牛还是很良心的,这种免费套餐对于一般的小型网站应用来说应该是足够了

说明一下,认证表单里,有一个“个人网址”的文本框,一开始我以为是空间的自定义域名,后来试了一下,应该就是个人网站地址,可以随便填,不影响使用。

 

4、认证成功之后,就可以正式开始使用七牛云了

 

首先需要创建一个存储空间,可以把这个存储空间简单理解为硬盘分区

我创建的存储空间名称是:myBucket,存储区域:华北

其实存储空间只支持小写,如上面我的存储空间创建成功之后就变成了:mybucket

 

然后需要为存储空间绑定一个域名,这个要求拥有自己的可解析并且已备案的国际域名,比如:itez.com.cn

添加域名时,还有一个需要注意的地方,就是”加速域名“后面的文本框中,不要输入根域名,而是要输入最终的子域名,比如:qn.files.itez.com.cn

等一会之后,就会创建一个CNAME,比如:xxx.qiniudns.com

这时登录自己域名的DNS解析管理页面,将”qn.files.itez.com.cn“使用CNAME方式指向到“xxx.qiniudns.com”即可。

 

这时就可以在空间管理中,上传文件到七牛云了,成功后,可以使用上面添加的子域名来访问上传的文件,例如:http://qn.files.itez.com.cn/myLogo.jpg

 

5、开发API

 

在JAVA中集成七牛云,添加引用:

<dependency>
    <groupId>com.qiniu</groupId>
    <artifactId>qiniu-java-sdk</artifactId>
    <version>7.2.10</version>
</dependency>

 

还需要以下相关信息:

1)AccessKey:在七牛云的“个人中心/密钥管理”中可以找到

2)SecretKey:同上

3)存储空间名称:就是在创建存储空间时填写的名称,比如:mybucket

4)存储区域名称:就是在创建存储空间时选择的存储区域,目前有四种:华东、华北、华南、北美

 

示例代码:

//构造一个带指定Zone对象的配置类
Configuration cfg = new Configuration(Zone.zone0());
//...其他参数参考类注释
UploadManager uploadManager = new UploadManager(cfg);
//...生成上传凭证,然后准备上传
String accessKey = "your access key";
String secretKey = "your secret key";
String bucket = "your bucket name";
//默认不指定key的情况下,以文件内容的hash值作为文件名
String key = null;
try {
byte[] uploadBytes = "hello qiniu cloud".getBytes("utf-8");
ByteArrayInputStream byteInputStream=new ByteArrayInputStream(uploadBytes);
Auth auth = Auth.create(accessKey, secretKey);
String upToken = auth.uploadToken(bucket);
try {
    Response response = uploadManager.put(byteInputStream,key,upToken,null, null);
    //解析上传成功的结果
    DefaultPutRet putRet = new Gson().fromJson(response.bodyString(), DefaultPutRet.class);
    System.out.println(putRet.key);
    System.out.println(putRet.hash);
} catch (QiniuException ex) {
    Response r = ex.response;
    System.err.println(r.toString());
    try {
    System.err.println(r.bodyString());
    } catch (QiniuException ex2) {
    //ignore
    }
}
} catch (UnsupportedEncodingException ex) {
//ignore
}

 

更多API详细说明:https://developer.qiniu.com/kodo


宠辱不惊,看庭前花开花落;去留无意,望天上云卷云舒

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
计算机基础1 | 学习笔记
快速学习计算机基础1。
7 0
计算机基础2 | 学习笔记
快速学习计算机基础2。
10 0
ECS体验
有买一台服务器的想法,但是只是做小测试和共享用,并不要求太长时间和太高配置,于是,价钱便是一个问题,作为一个在校学生,钱,是第一难题。
10 0
数据类型-数值和字符串 | 学习笔记
快速学习数据类型-数值和字符串。
5 0
Linux 命令执行过程 | 学习笔记
快速学习 Linux 命令执行过程。
7 0
Java classloader详解
Java程序并不是一个可执行文件,而是由很多的Java类组成,其运行是由JVM来控制的。而JVM从内存中查找到类,而真正将类加载进内存的就是ClassLoader,可以说我们每天都在接触ClassLoader,但是很多时候我们没有明白其执行的流程和原理。
5 0
冬季实战营第一期学习报告
通过五天学习与实操,对ECS云服务器入门、快速搭建LAMP环境、部署MySQL数据库、回顾搭建Docker环境和Spring Boot以及使用PolarDB和ECS搭建门户网站操作,对本期学习与实操的认识。
7 0
Redis高可用架构演进
Redis是目前使用最广泛的缓存程序之一,也被应用于多种场景,例如数据缓存、分布式锁等,Redis官方提供了多种部署架构,以满足不同应用场景下对于高可用和扩展性的要求。
6 0
冬季实战营第一期:从零到一上手玩转云服务器实验报告
第一期主要进行了六次实验,分别是《动手实操ECS云服务器》、《动手实操快速搭建LAMP环境》、《使用ECS服务器部署MySQL数据库》、《通过workbench远程登录ECS,快速搭建Docker环境》、《从零搭建Spring Boot的Hello World》以及《使用PolarDB和ECS搭建门户网站》。首先远程登陆ECS实例,搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。然后配置及远程访问MySQL。冯晓帅老师在直播上带大家通过workbench登录ECS并快速搭建Docker环境,运行Spring Boot,最后安装WordPress并搭建博客。
8 0
MySQL高可用架构演进
MySQL是数据库领域当之无愧的霸主之一,其在各行各业被广泛应用,随着广泛使用,对于MySQL本身的高可用性的要求就是不可避免的话题,而MySQL的高可用方案也随着MySQL功能的完善经历了多次升级,本文将对MySQL的各种高可用架构进行分析,以此来了解架构的演进。
6 0
+关注
netwild
入行十多年,编程变成了习惯。 主攻Java / Web相关,主要作品JWinner快速开发框架。 其他的。。。戒烟中。。。
78
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载