首先我们需要引入这几个个 JS:
jquery.js
,json3.min.js
,plupload.full.min.js
,qiniu.min.js
文档里就让引入qiniu.min.js
了,导致分片上传的时候就报错了!真坑.
前台 JS 部分:
$.ajax({ //请求 token url: "/qiniuToken", type: 'post', success: function(res) { //可以返回附带别的参数比如:域名,key 之类的. var token = res.uptoken; //这些参数什么意思七牛文档里都有 var config = { useCdnDomain: true, disableStatisticsReport: false, retryCount: 3, region: null, checkByMD5: true, chunkSize: 4, }; //customVars 为附加参数,在回调给 PHP 的时候会给你 var putExtra = { fname: file.name, customVars: { 'x:ip': ip }, params: {}, mimeType: null, }; //可以自己定义 也可以自动生成或者后端返回,主要看后端怎么写 key = '123.jpg'; const observable = qiniu.upload(file, key, token, putExtra, config) observable.subscribe({ next: (result) => { //这里给你的是上传进度,可以打印一下 result }, error: () => { //这是失败 }, complete: (res) => { //这是成功 }, }); } })
后端就不写了.文档里都有.