1.安装: pip install qiniu

2.编写获取uptoken的接口

@app.route('/uptoken/')
def uptoken():
access_key = ''
secret_key = ''
q = qiniu.Auth(access_key, secret_key) bucket = 'test-cmss' # 存储空间名字
token = q.upload_token(bucket)
return jsonify({'uptoken': token}) # 七牛云规定,必须使用此字段

在前端添加js的SDK

<script src="https://cdn.staticfile.org/Plupload/2.1.1/moxie.js"></script>
<script src="https://cdn.staticfile.org/Plupload/2.1.1/plupload.dev.js"></script>
<script src="https://cdn.staticfile.org/qiniu-js-sdk/1.0.14-beta/qiniu.js"></script>

在js中封装七牛初始化和配置相关的东西

'use strict';

var qiniujs = {
'setUp': function(args) {
var domain = args['domain']; //在七牛上绑定的域名
var params = {
browse_button:args['browse_btn'], //上传文件按钮的id属性值
runtimes: 'html5,flash,html4', //上传模式,依次退化
max_file_size: '500mb', //文件最大允许的尺寸
dragdrop: false, //是否开启拖拽上传
chunk_size: '4mb', //分块上传时,每片的大小
uptoken_url: args['uptoken_url'], //ajax请求uptoken的url
domain: domain, //图片下载时候的域名
get_new_uptoken: false, //是否每次上传文件都要从业务服务器获取token
auto_start: true, //如果设置了true,只要选择了图片,就会自动上传
unique_names: true,
multi_selection: false,
filters: {
mime_types :[
{title:'Image files',extensions: 'jpg,gif,png'},
{title:'Video files',extensions: 'flv,mpg,mpeg,avi,wmv,mov,asf,rm,rmvb,mkv,m4v,mp4'}
]
},
log_level: 5, //log级别
init: {
//上传成功的回调
'FileUploaded': function(up,file,info) {
if(args['success']){
var success = args['success'];
file.name = domain + file.target_name;
success(up,file,info);
}
},
//上传失败的回调
'Error': function(up,err,errTip) {
if(args['error']){
var error = args['error'];
error(up,err,errTip);
}
},
//上传进度条
'UploadProgress': function (up,file) {
if(args['progress']){
args['progress'](up,file);
}
},
//文件被添加到浏览器后执行
'FilesAdded': function (up,files) {
if(args['fileadded']){
args['fileadded'](up,files);
}
},
//上传动作完成后执行
'UploadComplete': function () {
if(args['complete']){
args['complete']();
}
}
}
}; // 把args中的参数放到params中去
for(var key in args){
params[key] = args[key];
}
var uploader = Qiniu.uploader(params);
return uploader;
}
};

引用js并初始化七牛

操作

上传后可以在七牛上面看到

最新文章

  1. 数据结构图文解析之:数组、单链表、双链表介绍及C++模板实现
  2. Request 接收参数乱码原理解析二:浏览器端编码原理
  3. 重新初始化RAC的OCR盘和Votedisk盘,修复RAC系统
  4. ArcGis在Oracle中常用的sql
  5. jmeter的使用(一)
  6. stm32f系列单片机startup_stm32fxxx.s文件说明(转)
  7. 单页web应用(SPA)的简单介绍
  8. android中少用静态变量(android静态变量static生命周期)
  9. BZOJ 2060: [Usaco2010 Nov]Visiting Cows 拜访奶牛( dp )
  10. nginx 1.4.2 安装笔记
  11. Executor以及线程池
  12. day_1 练习2
  13. spring boot容器启动详解
  14. Chrome 浏览器各版本下载大全【转载】
  15. django集成ansibe实现自动化
  16. UI规范案例-宝龙广场
  17. 使用Java命令行方式导入第三方jar包来运行Java程序的命令
  18. [2017-7-26]Android Learning Day4
  19. Older Versions Of Eclipse
  20. redis实现与分析-多机数据库

热门文章

  1. idou老师带你认识Istio13:Istio实现基础认证策略
  2. Go语言中的defer
  3. 大数据之路week05--day02(Maven安装,环境变量的配置及基本使用)
  4. linux mint安装mysql-8.0.16
  5. 关于class
  6. Vivado RAM使用
  7. [Qt Quick] qmlscene 工具的使用
  8. 数据结构实验之二叉树七:叶子问题(SDUT 3346)
  9. 转义字符\&#39;和\&quot;的使用示例
  10. 解决tomcat7控制台中文乱码问题