本文共 3220 字,大约阅读时间需要 10 分钟。
说明:
1、前台使用vue,后台用 java 传递一个 token。
2、token : 这个相当于一个密钥。
3、简单点说。就不写什么去注册账号,找到 as he ks 啥的,都到这一步,这些都不用说了。
1、安装 cnpm install qiniu-js / npm install qiniu-js
2、main.js 配置
3、使用
releaseBlog() { //发布博客 var qiniu = require('qiniu-js') var config = { useCdnDomain: true, region: qiniu.region.z0, //华东 }; var putExtra = { fname: "", params: {}, mimeType: [] || null }; var observer = { next(res){ // ... }, error(err){ // ... }, complete(res){ // ... } } var url1 = this.$store.state.frontUrl + "/getToken" this.$ajax.get(url1) .then( response => { //获取 token 和 图片的名称 this.token = response.data.token; this.key = response.data.key; //把图片上传到 七牛云 var observable = qiniu.upload(this.$refs.file.files[0], this.key, this.token , putExtra, config) var subscription = observable.subscribe(observer) // 上传开始 //把数据保存到 后台 var url2 = this.$store.state.frontUrl + "/saveBlog" this.$ajax.post(url2,JSON.stringify(this.inputBlog)) .then( response => { }) }) },
这里做两点说明:
1、获取token:很明显,我的第一个 ajax 就是,去后台获取 token 的。后面会给出后台 制作 token的代码。
2、获取上传的文件数据:
2、获取上传的文件数据:this.$refs.file.files[0]
2-1:maven 依赖
com.qiniu qiniu-java-sdk 7.2.11 compile com.squareup.okhttp3 okhttp 3.3.1 compile com.google.code.gson gson 2.6.2 compile com.qiniu happy-dns-java 0.1.4 compile junit junit 4.12 test
2-2:java代码
@RequestMapping(value = "/getToken", method = RequestMethod.GET) public QiNiu getToken() { QiNiu qiNiu = new QiNiu(); // 这三个 就是 ak sk 和你的 空间名 String accessKey = ""; String secretKey = ""; String bucket = ""; long expireSeconds = 600; StringMap putPolicy = new StringMap(); Auth auth = Auth.create(accessKey, secretKey); String upToken = auth.uploadToken(bucket,null, expireSeconds,putPolicy); qiNiu.setKey(UUID.randomUUID().toString()); qiNiu.setToken(upToken); return qiNiu; };
转载地址:http://ycjj.baihongyu.com/