一百三十:CMS系统之七牛js和python的SDK使用示例
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并初始化七牛



操作



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

一百三十:CMS系统之七牛js和python的SDK使用示例的更多相关文章
- 一百三十五:CMS系统之UEditoe编辑器集成以及配置将图片上传到七牛
		富文本编辑框,选择UEditor 下载地址:http://ueditor.baidu.com/website/download.html 使用说明:http://fex.baidu.com/uedit ... 
- 一百三十八:CMS系统之发布帖子前端js
		先补一个功能,根据扥状态显示用户名/退出或者登录/注册 from .views import bpimport configfrom flask import session, gfrom .mode ... 
- 一百三十四:CMS系统之版块管理二
		编辑 html,将数据渲染到tr上,方便js取值 js //编辑板块$(function () { $('.edit-board-btn').click(function (event) { var ... 
- 一百三十九:CMS系统之首页帖子列表布局
		# 配置ueditor上传文件到七牛UEDITOR_UPLOAD_TO_QINIU = True # 设置为True是,视为开始把图片传到七牛储存,本地不储存UEDITOR_QINIU_ACCESS_ ... 
- 一百三十六:CMS系统之发布帖子后台逻辑
		模型 class PostModel(db.Model): __tablename__ = 'post' id = db.Column(db.Integer, primary_key=True, au ... 
- 一百三十二:CMS系统之前端动态获取后台添加的轮播图
		先准备几张轮播图 排序顺序改为根据优先级倒序排 前端首页接口 @bp.route('/')def index(): banners = BannerModel.query.order_by(Banne ... 
- 一百二十九:CMS系统之七牛云存储介绍和配置
		将图片的存储.尺寸等图片本身的一些擦做,交给七牛云处理,自己只关注网站开发本身 七牛云官网:https://www.qiniu.com 操作 登录后,点击管理控制台 点击对象存储-->新建存储空 ... 
- 一百零三:CMS系统之使用sweetalert提示框优化返回结果
		在base模板中引用 在修改密码的js中使用 $(function () { $('#submit').click(function (evnet) { evnet.preventDefault(); ... 
- Java开发笔记(一百三十四)Swing的基本对话框
		桌面程序在运行过程中,时常需要在主界面之上弹出小窗,把某种消息告知用户,以便用户及时知晓并对症处理.这类小窗口通常称作对话框,依据消息交互的过程,可将对话框分为三类:消息对话框.确认对话框.输入对话框 ... 
随机推荐
- RHEL7启动到命令模式
			打开/etc/inittab 文件会看到以下信息 从中知道想要启动后就进入完整的多用户文本模式(命令行模式) 以root权限执行: ln -sf /lib/systemd/system/multi-u ... 
- KubeEdge v0.2发布,全球首个K8S原生的边缘计算平台开放云端代码
			KubeEdge开源背景 KubeEdge在18年11月24日的上海KubeCon上宣布开源,技术圈曾掀起一阵讨论边缘计算的风潮,从此翻开了边缘计算和云计算联动的新篇章. KubeEdge即Kube+ ... 
- win服务器 解决apache 80端口被占用问题
			是系统的服务占用了80端口,所以要么结束系统服务,要么修改apache端口. PID4的服务是World Wide Web Publishing Service 这里选择结束这个系统服务,运行serv ... 
- 如何让DEV跳出的“提示试用版”的对话框不再显示
			在 使用DevExpress控件的时候.每次对窗体进行更改的时候,都会出现一个对话框.发布的时候 也会出现一个对话框.之前的解决方法是在发布的时候把licenses.licx给删除掉,但是这个方法治标 ... 
- bat 判断 bat 是否是以管理员权限运行,和自动以管理员权限运行
			bat 判断 bat 是否是以管理员权限运行,和自动以管理员权限运行 判断 @echo off net.exe session 1>NUL 2>NUL && ( goto ... 
- vue 标题上下滚屏 无缝轮播
			参考网址:https://www.jianshu.com/p/b6813193ca0d <template> <div class="wrap" :style=& ... 
- PL/SQL查询,字段名添加中文别名,查询结果的字段名会显示问号,处理方法:
			一开始查询出来的字段名显示的是???,下面说说解决方法(本人也是在网上看到的,算是重复编辑一下): -------------------------------------------------- ... 
- Selenium(五)鼠标和键盘事件
			1.模拟鼠标找到大分类下的子分类.以网易严选为例. 如果直接找到 坚果炒货 这个元素,然后点击它来实现跳转,是会报错的. 模拟鼠标停留--点击行为: 页面已成功跳转 2.键盘事件 模拟搜索操作: ... 
- github下载慢的问题
			1. 修改HOSTS文件:在“C:\Windows\System32\drivers\etc” 下的HOSTS文件,添加以下地址: 151.101.44.249 github.global.ssl. ... 
- vs 2017 无法安装任何 nuget package,提示“库没有注册。。。”
			vs 2017 无法安装任何 nuget package,提示“库没有注册(异常来自 HRESULT: 0x8002801D (TYPE_E_LIBNOTREGISTERED))” 各种百度谷歌都没有 ... 
