From a1568cba69f3aae2944aad3f669b45525954a150 Mon Sep 17 00:00:00 2001
From: codedogfish
Date: Tue, 22 Mar 2016 17:57:56 +0800
Subject: [PATCH] Add uptoken_func to let user customize the process of
get_uptoken
---
Makefile | 10 ++++--
dist/qiniu.js | 86 +++++++++++++++++++++++++++-------------------
dist/qiniu.min.js | 4 +--
dist/qiniu.min.map | 2 +-
src/qiniu.js | 65 +++++++++++++++++++++++++----------
5 files changed, 108 insertions(+), 59 deletions(-)
diff --git a/Makefile b/Makefile
index b6cfba0f..820aa152 100644
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,11 @@
-install : all
+all : install build demo
-all :
+install :
npm install
bower install
+
+build :
grunt
- node demo/server.js
+
+demo :
+ node demo/server.js
\ No newline at end of file
diff --git a/dist/qiniu.js b/dist/qiniu.js
index 973542e3..b4f837b7 100644
--- a/dist/qiniu.js
+++ b/dist/qiniu.js
@@ -1,12 +1,12 @@
/*!
- * qiniu-js-sdk v1.0.13-beta
+ * qiniu-js-sdk v1.0.14-beta
*
* Copyright 2015 by Qiniu
* Released under GPL V2 License.
*
* GitHub: http://github.com/qiniu/js-sdk
*
- * Date: 2016-1-26
+ * Date: 2016-3-22
*/
/*global plupload ,mOxie*/
@@ -115,6 +115,13 @@ function QiniuJsSDK() {
args.unshift(header);
console.log.apply(console, args);
}
+ if (document.getElementById('qiniu-js-sdk-log')) {
+ var msg1 = header;
+ for (var j = 0; j < args.length; j++) {
+ msg1+=that.stringifyJSON(args[j]);
+ }
+ document.getElementById('qiniu-js-sdk-log').innerHTML += ''+msg1+'
';
+ }
}
function makeLogFunc(code){
@@ -182,21 +189,8 @@ function QiniuJsSDK() {
* @return {Boolean} file is a image or not
*/
this.isImage = function(url) {
- var res, suffix = "";
- var imageSuffixes = ["png", "jpg", "jpeg", "gif", "bmp"];
- var suffixMatch = /\.([a-zA-Z0-9]+)(\?|\@|$)/;
-
- if (!url || !suffixMatch.test(url)) {
- return false;
- }
- res = suffixMatch.exec(url);
- suffix = res[1].toLowerCase();
- for (var i = 0, l = imageSuffixes.length; i < l; i++) {
- if (suffix === imageSuffixes[i]) {
- return true;
- }
- }
- return false;
+ url = url.split(/[?#]/)[0];
+ return (/\.(png|jpg|jpeg|gif|bmp)$/i).test(url);
};
/**
@@ -520,25 +514,43 @@ function QiniuJsSDK() {
// if op.chunk_size set 0 will be cause to direct upload
};
- // if op.uptoken has no value
- // get token from 'uptoken_url'
- // else
- // set token to be op.uptoken
- var getUpToken = function() {
- if (!op.uptoken) {
+ // getUptoken maybe called at Init Event or BeforeUpload Event
+ // case Init Event, the file param of getUptken will be set null value
+ // if op.uptoken has value, set uptoken with op.uptoken
+ // else if op.uptoken_url has value, set uptoken from op.uptoken_url
+ // else if op.uptoken_func has value, set uptoken by result of op.uptoken_func
+ var getUpToken = function(file) {
+ if (op.uptoken) {
+ that.token = op.uptoken;
+ return;
+ } else if (op.uptoken_url) {
+ logger.debug("get uptoken from: ", that.uptoken_url);
// TODO: use mOxie
var ajax = that.createAjax();
- ajax.open('GET', that.uptoken_url, true);
+ ajax.open('GET', that.uptoken_url, false);
ajax.setRequestHeader("If-Modified-Since", "0");
- ajax.onreadystatechange = function() {
- if (ajax.readyState === 4 && ajax.status === 200) {
- var res = that.parseJSON(ajax.responseText);
- that.token = res.uptoken;
- }
- };
+ // ajax.onreadystatechange = function() {
+ // if (ajax.readyState === 4 && ajax.status === 200) {
+ // var res = that.parseJSON(ajax.responseText);
+ // that.token = res.uptoken;
+ // }
+ // };
ajax.send();
+ if (ajax.status === 200) {
+ var res = that.parseJSON(ajax.responseText);
+ that.token = res.uptoken;
+ logger.debug("get new uptoken: ", res.uptoken);
+ } else {
+ logger.error("get uptoken error: ", ajax.responseText);
+ }
+ return;
+ } else if (op.uptoken_func) {
+ logger.debug("get uptoken from uptoken_func");
+ that.token = op.uptoken_func(file);
+ logger.debug("get new uptoken: ", that.token);
+ return;
} else {
- that.token = op.uptoken;
+ logger.error("one of [uptoken, uptoken_url, uptoken_func] settings in options is required!");
}
};
@@ -576,6 +588,10 @@ function QiniuJsSDK() {
throw 'browse_button setting in options is required!';
}
+ if (!op.uptoken && !op.uptoken_url && !op.uptoken_func) {
+ throw 'one of [uptoken, uptoken_url, uptoken_func] settings in options is required!';
+ }
+
logger.debug("init uploader start");
logger.debug("environment: ", mOxie.Env);
@@ -630,12 +646,12 @@ function QiniuJsSDK() {
logger.debug("Init event activated");
// if op.get_new_uptoken is not true
// invoke getUptoken when uploader init
- // else
+ // else
// getUptoken everytime before a new file upload
if(!op.get_new_uptoken){
- getUpToken();
+ getUpToken(null);
}
- getUpToken();
+ //getUpToken(null);
});
logger.debug("bind Init event");
@@ -678,7 +694,7 @@ function QiniuJsSDK() {
ctx = '';
if(op.get_new_uptoken){
- getUpToken();
+ getUpToken(file);
}
var directUpload = function(up, file, func) {
diff --git a/dist/qiniu.min.js b/dist/qiniu.min.js
index ae300088..343e2818 100644
--- a/dist/qiniu.min.js
+++ b/dist/qiniu.min.js
@@ -1,3 +1,3 @@
-/*! qiniu-js-sdk v1.0.13-beta | Copyright 2015 by Qiniu */
-!function(global){function createCookie(a,b,c){var d=new Date;d.setTime(d.getTime()+24*c*60*60*1e3);var e="; expires="+d.toGMTString();document.cookie=a+"="+b+e+"; path=/"}function readCookie(a){var b=a+"=";var c=document.cookie.split(";");for(var d=0,e=c.length;e>d;d++){var f=c[d];while(" "===f.charAt(0))f=f.substring(1,f.length);if(0===f.indexOf(b))return f.substring(b.length,f.length)}return null}window.localStorage||(window.localStorage={setItem:function(a,b){createCookie(a,b,30)},getItem:function(a){return readCookie(a)},removeItem:function(a){createCookie(a,"",-1)}});function QiniuJsSDK(){var that=this;this.detectIEVersion=function(){var a=4,b=document.createElement("div"),c=b.getElementsByTagName("i");while(b.innerHTML="",c[0])a++;return a>4?a:!1};var logger={MUTE:0,FATA:1,ERROR:2,WARN:3,INFO:4,DEBUG:5,TRACE:6,level:0};function log(a,b){var c="[qiniu-js-sdk]["+a+"]";if(that.detectIEVersion()){var d=c;for(var e=0;e=logger[a]){var c=Array.prototype.slice.call(arguments);log(b,c)}}}for(var property in logger)logger.hasOwnProperty(property)&&"number"==typeof logger[property]&&!logger.hasOwnProperty(property.toLowerCase())&&makeLogFunc(property);var qiniuUploadUrl;qiniuUploadUrl="https:"===window.location.protocol?"https://up.qbox.me":"http://upload.qiniu.com";var qiniuUploadUrls=["http://upload.qiniu.com","http://up.qiniu.com"];var changeUrlTimes=0;this.resetUploadUrl=function(){if("https:"===window.location.protocol)qiniuUploadUrl="https://up.qbox.me";else{var a=changeUrlTimes%qiniuUploadUrls.length;qiniuUploadUrl=qiniuUploadUrls[a],changeUrlTimes++}logger.debug("resetUploadUrl: "+qiniuUploadUrl)},this.resetUploadUrl(),this.isImage=function(a){var b,c="";var d=["png","jpg","jpeg","gif","bmp"];var e=/\.([a-zA-Z0-9]+)(\?|\@|$)/;if(!a||!e.test(a))return!1;b=e.exec(a),c=b[1].toLowerCase();for(var f=0,g=d.length;g>f;f++)if(c===d[f])return!0;return!1},this.getFileExtension=function(a){var b=a.split(".");var c;return c=1===b.length||""===b[0]&&2===b.length?"":b.pop().toLowerCase()},this.utf8_encode=function(a){if(null===a||"undefined"==typeof a)return"";var b=a+"";var c="",d,e,f=0;d=e=0,f=b.length;for(var g=0;f>g;g++){var h=b.charCodeAt(g);var i=null;if(128>h)e++;else if(h>127&&2048>h)i=String.fromCharCode(h>>6|192,63&h|128);else if(63488&h^!0)i=String.fromCharCode(h>>12|224,h>>6&63|128,63&h|128);else{if(64512&h^!0)throw new RangeError("Unmatched trail surrogate at "+g);var j=b.charCodeAt(++g);if(64512&j^!0)throw new RangeError("Unmatched lead surrogate at "+(g-1));h=((1023&h)<<10)+(1023&j)+65536,i=String.fromCharCode(h>>18|240,h>>12&63|128,h>>6&63|128,63&h|128)}null!==i&&(e>d&&(c+=b.slice(d,e)),c+=i,d=e=g+1)}return e>d&&(c+=b.slice(d,f)),c},this.base64_encode=function(a){var b="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var c,d,e,f,g,h,i,j,k=0,l=0,m="",n=[];if(!a)return a;a=this.utf8_encode(a+"");do c=a.charCodeAt(k++),d=a.charCodeAt(k++),e=a.charCodeAt(k++),j=c<<16|d<<8|e,f=j>>18&63,g=j>>12&63,h=j>>6&63,i=63&j,n[l++]=b.charAt(f)+b.charAt(g)+b.charAt(h)+b.charAt(i);while(kd;d++)b.push(that.stringifyJSON(a[d]));return"["+b.join(",")+"]"}if(null===a)return"null";var e=[];for(var f in a)a.hasOwnProperty(f)&&e.push(that.stringifyJSON(f)+":"+that.stringifyJSON(a[f]));return"{"+e.join(",")+"}";case"number":return a;case!1:return a;case"boolean":return a}},this.trim=function(a){return null===a?"":a.replace(/^\s+|\s+$/g,"")},this.uploader=function(a){var b=function(){var b=that.detectIEVersion();var c,d,e;var f="Safari"===mOxie.Env.browser&&mOxie.Env.version<=5&&"Windows"===mOxie.Env.os&&"7"===mOxie.Env.osVersion||"Safari"===mOxie.Env.browser&&"iOS"===mOxie.Env.os&&"7"===mOxie.Env.osVersion;b&&9>=b&&a.chunk_size&&a.runtimes.indexOf("flash")<0?a.chunk_size=0:f?a.chunk_size=0:(c=20,d=4<d&&(a.chunk_size=d))};var c=function(){if(a.uptoken)that.token=a.uptoken;else{var b=that.createAjax();b.open("GET",that.uptoken_url,!0),b.setRequestHeader("If-Modified-Since","0"),b.onreadystatechange=function(){if(4===b.readyState&&200===b.status){var a=that.parseJSON(b.responseText);that.token=a.uptoken}},b.send()}};var d=function(b,c,d){var e="",f=!1;if(!a.save_key)if(f=b.getOption&&b.getOption("unique_names"),f=f||b.settings&&b.settings.unique_names){var g=that.getFileExtension(c.name);e=g?c.id+"."+g:c.id}else e="function"==typeof d?d(b,c):c.name;return e};if(a.log_level&&(logger.level=a.log_level),!a.domain)throw"domain setting in options is required!";if(!a.browse_button)throw"browse_button setting in options is required!";logger.debug("init uploader start"),logger.debug("environment: ",mOxie.Env),logger.debug("userAgent: ",navigator.userAgent);var e={};var f=a.init&&a.init.Error;var g=a.init&&a.init.FileUploaded;a.init.Error=function(){},a.init.FileUploaded=function(){},that.uptoken_url=a.uptoken_url,that.token="",that.key_handler="function"==typeof a.init.Key?a.init.Key:"",this.domain=a.domain;var h="";var i={isResumeUpload:!1,resumeFilesize:0,startTime:"",currentTime:""};b(),logger.debug("invoke reset_chunk_size()"),logger.debug("op.chunk_size: ",a.chunk_size),plupload.extend(e,a,{url:qiniuUploadUrl,multipart_params:{token:""}}),logger.debug("option: ",e);var j=new plupload.Uploader(e);logger.debug("new plupload.Uploader(option)"),j.bind("Init",function(b,d){logger.debug("Init event activated"),a.get_new_uptoken||c(),c()}),logger.debug("bind Init event"),j.bind("FilesAdded",function(a,b){logger.debug("FilesAdded event activated");var c=a.getOption&&a.getOption("auto_start");c=c||a.settings&&a.settings.auto_start,logger.debug("auto_start: ",c),logger.debug("files: ",b),c&&setTimeout(function(){a.start(),logger.debug("invoke up.start()")},0),a.refresh()}),logger.debug("bind FilesAdded event"),j.bind("BeforeUpload",function(b,e){logger.debug("BeforeUpload event activated"),e.speed=e.speed||0,h="",a.get_new_uptoken&&c();var f=function(b,c,e){i.startTime=(new Date).getTime();var f;f=a.save_key?{token:that.token}:{key:d(b,c,e),token:that.token},logger.debug("directUpload multipart_params_obj: ",f);var h=a.x_vars;if(void 0!==h&&"object"==typeof h)for(var j in h)h.hasOwnProperty(j)&&("function"==typeof h[j]?f["x:"+j]=h[j](b,c):"object"!=typeof h[j]&&(f["x:"+j]=h[j]));b.setOption({url:qiniuUploadUrl,multipart:!0,chunk_size:g()?a.max_file_size:void 0,multipart_params:f})};var g=function(){var a=navigator.userAgent.toLowerCase();return(a.match(/MicroMessenger/i)||"QQBrowser"===mOxie.Env.browser||a.match(/V1_AND_SQ/i))&&"android"===mOxie.Env.OS.toLowerCase()?!0:!1};var k=b.getOption&&b.getOption("chunk_size");if(k=k||b.settings&&b.settings.chunk_size,logger.debug("uploader.runtime: ",j.runtime),logger.debug("chunk_size: ",k),"html5"!==j.runtime&&"flash"!==j.runtime||!k)logger.debug("directUpload because uploader.runtime !== 'html5' || uploader.runtime !== 'flash' || !chunk_size"),f(b,e,that.key_handler);else if(e.sizen-o&&100!==l.percent&&e.size===l.total?(e.percent=l.percent,e.loaded=l.offset,h=l.ctx,i.isResumeUpload=!0,i.resumeFilesize=l.offset,l.offset+m>e.size&&(m=e.size-l.offset)):localStorage.removeItem(e.name)}i.startTime=(new Date).getTime(),b.setOption({url:qiniuUploadUrl+"/mkblk/"+m,multipart:!1,chunk_size:k,required_features:"chunks",headers:{Authorization:"UpToken "+that.token},multipart_params:{}})}}),logger.debug("bind BeforeUpload event"),j.bind("UploadProgress",function(a,b){logger.trace("UploadProgress event activated"),i.currentTime=(new Date).getTime();var c=i.currentTime-i.startTime;var d=b.loaded||0;i.isResumeUpload&&(d=b.loaded-i.resumeFilesize),b.speed=(d/c*1e3).toFixed(0)||0}),logger.debug("bind UploadProgress event"),j.bind("ChunkUploaded",function(a,b,c){logger.debug("ChunkUploaded event activated"),logger.debug("file: ",b),logger.debug("info: ",c);var d=that.parseJSON(c.response);logger.debug("res: ",d),h=h?h+","+d.ctx:d.ctx;var e=c.total-c.offset;var f=a.getOption&&a.getOption("chunk_size");f=f||a.settings&&a.settings.chunk_size,f>e&&(a.setOption({url:qiniuUploadUrl+"/mkblk/"+e}),logger.debug("up.setOption url: ",qiniuUploadUrl+"/mkblk/"+e)),localStorage.setItem(b.name,that.stringifyJSON({ctx:h,percent:b.percent,total:c.total,offset:c.offset,time:(new Date).getTime()}))}),logger.debug("bind ChunkUploaded event");var k=qiniuUploadUrls.length;var l=function(a){return k-->0?(setTimeout(function(){that.resetUploadUrl(),a.status=plupload.QUEUED,j.stop(),j.start()},0),!0):(k=qiniuUploadUrls.length,!1)};return j.bind("Error",function(a){return function(b,c){logger.error("Error event activated"),logger.error("err: ",c);var d="";var e=c.file;if(e){switch(c.code){case plupload.FAILED:d="\u4e0a\u4f20\u5931\u8d25\u3002\u8bf7\u7a0d\u540e\u518d\u8bd5\u3002";break;case plupload.FILE_SIZE_ERROR:var f=b.getOption&&b.getOption("max_file_size");f=f||b.settings&&b.settings.max_file_size,d="\u6d4f\u89c8\u5668\u6700\u5927\u53ef\u4e0a\u4f20"+f+"\u3002\u66f4\u5927\u6587\u4ef6\u8bf7\u4f7f\u7528\u547d\u4ee4\u884c\u5de5\u5177\u3002";break;case plupload.FILE_EXTENSION_ERROR:d="\u6587\u4ef6\u9a8c\u8bc1\u5931\u8d25\u3002\u8bf7\u7a0d\u540e\u91cd\u8bd5\u3002";break;case plupload.HTTP_ERROR:if(""===c.response){if(d=c.message||"\u672a\u77e5\u7f51\u7edc\u9519\u8bef\u3002",!l(e))return;break}var g=that.parseJSON(c.response);var h=g.error;switch(c.status){case 400:d="\u8bf7\u6c42\u62a5\u6587\u683c\u5f0f\u9519\u8bef\u3002";break;case 401:d="\u5ba2\u6237\u7aef\u8ba4\u8bc1\u6388\u6743\u5931\u8d25\u3002\u8bf7\u91cd\u8bd5\u6216\u63d0\u4ea4\u53cd\u9988\u3002";break;case 405:d="\u5ba2\u6237\u7aef\u8bf7\u6c42\u9519\u8bef\u3002\u8bf7\u91cd\u8bd5\u6216\u63d0\u4ea4\u53cd\u9988\u3002";break;case 579:d="\u8d44\u6e90\u4e0a\u4f20\u6210\u529f\uff0c\u4f46\u56de\u8c03\u5931\u8d25\u3002";break;case 599:if(d="\u7f51\u7edc\u8fde\u63a5\u5f02\u5e38\u3002\u8bf7\u91cd\u8bd5\u6216\u63d0\u4ea4\u53cd\u9988\u3002",!l(e))return;break;case 614:d="\u6587\u4ef6\u5df2\u5b58\u5728\u3002";try{g=that.parseJSON(g.error),h=g.error||"file exists"}catch(i){h=g.error||"file exists"}break;case 631:d="\u6307\u5b9a\u7a7a\u95f4\u4e0d\u5b58\u5728\u3002";break;case 701:d="\u4e0a\u4f20\u6570\u636e\u5757\u6821\u9a8c\u51fa\u9519\u3002\u8bf7\u91cd\u8bd5\u6216\u63d0\u4ea4\u53cd\u9988\u3002";break;default:if(d="\u672a\u77e5\u9519\u8bef\u3002",!l(e))return}d=d+"("+c.status+"\uff1a"+h+")";break;case plupload.SECURITY_ERROR:d="\u5b89\u5168\u914d\u7f6e\u9519\u8bef\u3002\u8bf7\u8054\u7cfb\u7f51\u7ad9\u7ba1\u7406\u5458\u3002";break;case plupload.GENERIC_ERROR:d="\u4e0a\u4f20\u5931\u8d25\u3002\u8bf7\u7a0d\u540e\u518d\u8bd5\u3002";break;case plupload.IO_ERROR:d="\u4e0a\u4f20\u5931\u8d25\u3002\u8bf7\u7a0d\u540e\u518d\u8bd5\u3002";break;case plupload.INIT_ERROR:d="\u7f51\u7ad9\u914d\u7f6e\u9519\u8bef\u3002\u8bf7\u8054\u7cfb\u7f51\u7ad9\u7ba1\u7406\u5458\u3002",j.destroy();break;default:if(d=c.message+c.details,!l(e))return}a&&a(b,c,d)}b.refresh()}}(f)),logger.debug("bind Error event"),j.bind("FileUploaded",function(b){return function(c,e,f){logger.debug("FileUploaded event activated"),logger.debug("file: ",e),logger.debug("info: ",f);var g=function(c,d,e){if(a.downtoken_url){var f=that.createAjax();f.open("POST",a.downtoken_url,!0),f.setRequestHeader("Content-type","application/x-www-form-urlencoded"),f.onreadystatechange=function(){if(4===f.readyState)if(200===f.status){var a;try{a=that.parseJSON(f.responseText)}catch(g){throw"invalid json format"}var h={};plupload.extend(h,that.parseJSON(e),a),b&&b(c,d,that.stringifyJSON(h))}else j.trigger("Error",{status:f.status,response:f.responseText,file:d,code:plupload.HTTP_ERROR})},f.send("key="+that.parseJSON(e).key+"&domain="+a.domain)}else b&&b(c,d,e)};var i=that.parseJSON(f.response);if(h=h?h:i.ctx,logger.debug("ctx: ",h),h){var k="";logger.debug("save_key: ",a.save_key),a.save_key||(k=d(c,e,that.key_handler),k=k?"/key/"+that.URLSafeBase64Encode(k):"");var l="/fname/"+that.URLSafeBase64Encode(e.name);logger.debug("op.x_vars: ",a.x_vars);var m=a.x_vars,n="",o="";if(void 0!==m&&"object"==typeof m)for(var p in m)m.hasOwnProperty(p)&&("function"==typeof m[p]?n=that.URLSafeBase64Encode(m[p](c,e)):"object"!=typeof m[p]&&(n=that.URLSafeBase64Encode(m[p])),o+="/x:"+p+"/"+n);var q=qiniuUploadUrl+"/mkfile/"+e.size+k+l+o;var r=that.detectIEVersion();var s;r&&9>=r?(s=new mOxie.XMLHttpRequest,mOxie.Env.swf_url=a.flash_swf_url):s=that.createAjax(),s.open("POST",q,!0),s.setRequestHeader("Content-Type","text/plain;charset=UTF-8"),s.setRequestHeader("Authorization","UpToken "+that.token);var t=function(){if(logger.debug("ajax.readyState: ",s.readyState),4===s.readyState){localStorage.removeItem(e.name);var a;200===s.status?(a=s.responseText,logger.debug("mkfile is success: ",a),g(c,e,a)):(a={status:s.status,response:s.responseText,file:e,code:-200},logger.debug("mkfile is error: ",a),j.trigger("Error",a))}};r&&9>=r?s.bind("readystatechange",t):s.onreadystatechange=t,s.send(h),logger.debug("mkfile: ",q)}else g(c,e,f.response)}}(g)),logger.debug("bind FileUploaded event"),j.init(),logger.debug("invoke uploader.init()"),logger.debug("init uploader end"),j},this.getUrl=function(a){if(!a)return!1;a=encodeURI(a);var b=this.domain;return"/"!==b.slice(b.length-1)&&(b+="/"),b+a},this.imageView2=function(a,b){var c=a.mode||"",d=a.w||"",e=a.h||"",f=a.q||"",g=a.format||"";if(!c)return!1;if(!d&&!e)return!1;var h="imageView2/"+c;return h+=d?"/w/"+d:"",h+=e?"/h/"+e:"",h+=f?"/q/"+f:"",h+=g?"/format/"+g:"",b&&(h=this.getUrl(b)+"?"+h),h},this.imageMogr2=function(a,b){var c=a["auto-orient"]||"",d=a.thumbnail||"",e=a.strip||"",f=a.gravity||"",g=a.crop||"",h=a.quality||"",i=a.rotate||"",j=a.format||"",k=a.blur||"";var l="imageMogr2";return l+=c?"/auto-orient":"",l+=d?"/thumbnail/"+d:"",l+=e?"/strip":"",l+=f?"/gravity/"+f:"",l+=h?"/quality/"+h:"",l+=g?"/crop/"+g:"",l+=i?"/rotate/"+i:"",l+=j?"/format/"+j:"",l+=k?"/blur/"+k:"",b&&(l=this.getUrl(b)+"?"+l),l},this.watermark=function(a,b){var c=a.mode;if(!c)return!1;var d="watermark/"+c;if(1===c){var e=a.image||"";if(!e)return!1;d+=e?"/image/"+this.URLSafeBase64Encode(e):""}else{if(2!==c)return!1;var f=a.text?a.text:"",g=a.font?a.font:"",h=a.fontsize?a.fontsize:"",i=a.fill?a.fill:"";if(!f)return!1;d+=f?"/text/"+this.URLSafeBase64Encode(f):"",d+=g?"/font/"+this.URLSafeBase64Encode(g):"",d+=h?"/fontsize/"+h:"",d+=i?"/fill/"+this.URLSafeBase64Encode(i):""}var j=a.dissolve||"",k=a.gravity||"",l=a.dx||"",m=a.dy||"";return d+=j?"/dissolve/"+j:"",d+=k?"/gravity/"+k:"",d+=l?"/dx/"+l:"",d+=m?"/dy/"+m:"",b&&(d=this.getUrl(b)+"?"+d),d},this.imageInfo=function(a){if(!a)return!1;var b=this.getUrl(a)+"?imageInfo";var c=this.createAjax();var d;var e=this;return c.open("GET",b,!1),c.onreadystatechange=function(){4===c.readyState&&200===c.status&&(d=e.parseJSON(c.responseText))},c.send(),d},this.exif=function(a){if(!a)return!1;var b=this.getUrl(a)+"?exif";var c=this.createAjax();var d;var e=this;return c.open("GET",b,!1),c.onreadystatechange=function(){4===c.readyState&&200===c.status&&(d=e.parseJSON(c.responseText))},c.send(),d},this.get=function(a,b){return b&&a?"exif"===a?this.exif(b):"imageInfo"===a?this.imageInfo(b):!1:!1},this.pipeline=function(a,b){var c="[object Array]"===Object.prototype.toString.call(a);var d,e,f="";if(c){for(var g=0,h=a.length;h>g;g++){if(d=a[g],!d.fop)return!1;switch(d.fop){case"watermark":f+=this.watermark(d)+"|";break;case"imageView2":f+=this.imageView2(d)+"|";break;case"imageMogr2":f+=this.imageMogr2(d)+"|";break;default:e=!0}if(e)return!1}if(b){f=this.getUrl(b)+"?"+f;var i=f.length;"|"===f.slice(i-1)&&(f=f.slice(0,i-1))}return f}return!1}}var Qiniu=new QiniuJsSDK;global.Qiniu=Qiniu,global.QiniuJsSDK=QiniuJsSDK}(window);
+/*! qiniu-js v1.0.14-beta | Copyright 2015 by Qiniu */
+!function(global){function createCookie(a,b,c){var d=new Date;d.setTime(d.getTime()+24*c*60*60*1e3);var e="; expires="+d.toGMTString();document.cookie=a+"="+b+e+"; path=/"}function readCookie(a){var b=a+"=";var c=document.cookie.split(";");for(var d=0,e=c.length;e>d;d++){var f=c[d];while(" "===f.charAt(0))f=f.substring(1,f.length);if(0===f.indexOf(b))return f.substring(b.length,f.length)}return null}window.localStorage||(window.localStorage={setItem:function(a,b){createCookie(a,b,30)},getItem:function(a){return readCookie(a)},removeItem:function(a){createCookie(a,"",-1)}});function QiniuJsSDK(){var that=this;this.detectIEVersion=function(){var a=4,b=document.createElement("div"),c=b.getElementsByTagName("i");while(b.innerHTML="",c[0])a++;return a>4?a:!1};var logger={MUTE:0,FATA:1,ERROR:2,WARN:3,INFO:4,DEBUG:5,TRACE:6,level:0};function log(a,b){var c="[qiniu-js-sdk]["+a+"]";if(that.detectIEVersion()){var d=c;for(var e=0;e"+f+"
"}}function makeLogFunc(a){var b=a.toLowerCase();logger[b]=function(){if(window.console&&window.console.log&&logger.level>=logger[a]){var c=Array.prototype.slice.call(arguments);log(b,c)}}}for(var property in logger)logger.hasOwnProperty(property)&&"number"==typeof logger[property]&&!logger.hasOwnProperty(property.toLowerCase())&&makeLogFunc(property);var qiniuUploadUrl;qiniuUploadUrl="https:"===window.location.protocol?"https://up.qbox.me":"http://upload.qiniu.com";var qiniuUploadUrls=["http://upload.qiniu.com","http://up.qiniu.com"];var changeUrlTimes=0;this.resetUploadUrl=function(){if("https:"===window.location.protocol)qiniuUploadUrl="https://up.qbox.me";else{var a=changeUrlTimes%qiniuUploadUrls.length;qiniuUploadUrl=qiniuUploadUrls[a],changeUrlTimes++}logger.debug("resetUploadUrl: "+qiniuUploadUrl)},this.resetUploadUrl(),this.isImage=function(a){return a=a.split(/[?#]/)[0],/\.(png|jpg|jpeg|gif|bmp)$/i.test(a)},this.getFileExtension=function(a){var b=a.split(".");var c;return c=1===b.length||""===b[0]&&2===b.length?"":b.pop().toLowerCase()},this.utf8_encode=function(a){if(null===a||"undefined"==typeof a)return"";var b=a+"";var c="",d,e,f=0;d=e=0,f=b.length;for(var g=0;f>g;g++){var h=b.charCodeAt(g);var i=null;if(128>h)e++;else if(h>127&&2048>h)i=String.fromCharCode(h>>6|192,63&h|128);else if(63488&h^!0)i=String.fromCharCode(h>>12|224,h>>6&63|128,63&h|128);else{if(64512&h^!0)throw new RangeError("Unmatched trail surrogate at "+g);var j=b.charCodeAt(++g);if(64512&j^!0)throw new RangeError("Unmatched lead surrogate at "+(g-1));h=((1023&h)<<10)+(1023&j)+65536,i=String.fromCharCode(h>>18|240,h>>12&63|128,h>>6&63|128,63&h|128)}null!==i&&(e>d&&(c+=b.slice(d,e)),c+=i,d=e=g+1)}return e>d&&(c+=b.slice(d,f)),c},this.base64_encode=function(a){var b="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var c,d,e,f,g,h,i,j,k=0,l=0,m="",n=[];if(!a)return a;a=this.utf8_encode(a+"");do c=a.charCodeAt(k++),d=a.charCodeAt(k++),e=a.charCodeAt(k++),j=c<<16|d<<8|e,f=j>>18&63,g=j>>12&63,h=j>>6&63,i=63&j,n[l++]=b.charAt(f)+b.charAt(g)+b.charAt(h)+b.charAt(i);while(kd;d++)b.push(that.stringifyJSON(a[d]));return"["+b.join(",")+"]"}if(null===a)return"null";var e=[];for(var f in a)a.hasOwnProperty(f)&&e.push(that.stringifyJSON(f)+":"+that.stringifyJSON(a[f]));return"{"+e.join(",")+"}";case"number":return a;case!1:return a;case"boolean":return a}},this.trim=function(a){return null===a?"":a.replace(/^\s+|\s+$/g,"")},this.uploader=function(a){var b=function(){var b=that.detectIEVersion();var c,d,e;var f="Safari"===mOxie.Env.browser&&mOxie.Env.version<=5&&"Windows"===mOxie.Env.os&&"7"===mOxie.Env.osVersion||"Safari"===mOxie.Env.browser&&"iOS"===mOxie.Env.os&&"7"===mOxie.Env.osVersion;b&&9>=b&&a.chunk_size&&a.runtimes.indexOf("flash")<0?a.chunk_size=0:f?a.chunk_size=0:(c=20,d=4<d&&(a.chunk_size=d))};var c=function(b){if(a.uptoken)return void(that.token=a.uptoken);{if(!a.uptoken_url)return a.uptoken_func?(logger.debug("get uptoken from uptoken_func"),that.token=a.uptoken_func(b),void logger.debug("get new uptoken: ",that.token)):void logger.error("one of [uptoken, uptoken_url, uptoken_func] settings in options is required!");logger.debug("get uptoken from: ",that.uptoken_url);var c=that.createAjax();if(c.open("GET",that.uptoken_url,!1),c.setRequestHeader("If-Modified-Since","0"),c.send(),200===c.status){var d=that.parseJSON(c.responseText);that.token=d.uptoken,logger.debug("get new uptoken: ",d.uptoken)}else logger.error("get uptoken error: ",c.responseText)}};var d=function(b,c,d){var e="",f=!1;if(!a.save_key)if(f=b.getOption&&b.getOption("unique_names"),f=f||b.settings&&b.settings.unique_names){var g=that.getFileExtension(c.name);e=g?c.id+"."+g:c.id}else e="function"==typeof d?d(b,c):c.name;return e};if(a.log_level&&(logger.level=a.log_level),!a.domain)throw"domain setting in options is required!";if(!a.browse_button)throw"browse_button setting in options is required!";if(!a.uptoken&&!a.uptoken_url&&!a.uptoken_func)throw"one of [uptoken, uptoken_url, uptoken_func] settings in options is required!";logger.debug("init uploader start"),logger.debug("environment: ",mOxie.Env),logger.debug("userAgent: ",navigator.userAgent);var e={};var f=a.init&&a.init.Error;var g=a.init&&a.init.FileUploaded;a.init.Error=function(){},a.init.FileUploaded=function(){},that.uptoken_url=a.uptoken_url,that.token="",that.key_handler="function"==typeof a.init.Key?a.init.Key:"",this.domain=a.domain;var h="";var i={isResumeUpload:!1,resumeFilesize:0,startTime:"",currentTime:""};b(),logger.debug("invoke reset_chunk_size()"),logger.debug("op.chunk_size: ",a.chunk_size),plupload.extend(e,a,{url:qiniuUploadUrl,multipart_params:{token:""}}),logger.debug("option: ",e);var j=new plupload.Uploader(e);logger.debug("new plupload.Uploader(option)"),j.bind("Init",function(b,d){logger.debug("Init event activated"),a.get_new_uptoken||c(null)}),logger.debug("bind Init event"),j.bind("FilesAdded",function(a,b){logger.debug("FilesAdded event activated");var c=a.getOption&&a.getOption("auto_start");c=c||a.settings&&a.settings.auto_start,logger.debug("auto_start: ",c),logger.debug("files: ",b),c&&setTimeout(function(){a.start(),logger.debug("invoke up.start()")},0),a.refresh()}),logger.debug("bind FilesAdded event"),j.bind("BeforeUpload",function(b,e){logger.debug("BeforeUpload event activated"),e.speed=e.speed||0,h="",a.get_new_uptoken&&c(e);var f=function(b,c,e){i.startTime=(new Date).getTime();var f;f=a.save_key?{token:that.token}:{key:d(b,c,e),token:that.token},logger.debug("directUpload multipart_params_obj: ",f);var h=a.x_vars;if(void 0!==h&&"object"==typeof h)for(var j in h)h.hasOwnProperty(j)&&("function"==typeof h[j]?f["x:"+j]=h[j](b,c):"object"!=typeof h[j]&&(f["x:"+j]=h[j]));b.setOption({url:qiniuUploadUrl,multipart:!0,chunk_size:g()?a.max_file_size:void 0,multipart_params:f})};var g=function(){var a=navigator.userAgent.toLowerCase();return(a.match(/MicroMessenger/i)||"QQBrowser"===mOxie.Env.browser||a.match(/V1_AND_SQ/i))&&"android"===mOxie.Env.OS.toLowerCase()?!0:!1};var k=b.getOption&&b.getOption("chunk_size");if(k=k||b.settings&&b.settings.chunk_size,logger.debug("uploader.runtime: ",j.runtime),logger.debug("chunk_size: ",k),"html5"!==j.runtime&&"flash"!==j.runtime||!k)logger.debug("directUpload because uploader.runtime !== 'html5' || uploader.runtime !== 'flash' || !chunk_size"),f(b,e,that.key_handler);else if(e.sizen-o&&100!==l.percent&&e.size===l.total?(e.percent=l.percent,e.loaded=l.offset,h=l.ctx,i.isResumeUpload=!0,i.resumeFilesize=l.offset,l.offset+m>e.size&&(m=e.size-l.offset)):localStorage.removeItem(e.name)}i.startTime=(new Date).getTime(),b.setOption({url:qiniuUploadUrl+"/mkblk/"+m,multipart:!1,chunk_size:k,required_features:"chunks",headers:{Authorization:"UpToken "+that.token},multipart_params:{}})}}),logger.debug("bind BeforeUpload event"),j.bind("UploadProgress",function(a,b){logger.trace("UploadProgress event activated"),i.currentTime=(new Date).getTime();var c=i.currentTime-i.startTime;var d=b.loaded||0;i.isResumeUpload&&(d=b.loaded-i.resumeFilesize),b.speed=(d/c*1e3).toFixed(0)||0}),logger.debug("bind UploadProgress event"),j.bind("ChunkUploaded",function(a,b,c){logger.debug("ChunkUploaded event activated"),logger.debug("file: ",b),logger.debug("info: ",c);var d=that.parseJSON(c.response);logger.debug("res: ",d),h=h?h+","+d.ctx:d.ctx;var e=c.total-c.offset;var f=a.getOption&&a.getOption("chunk_size");f=f||a.settings&&a.settings.chunk_size,f>e&&(a.setOption({url:qiniuUploadUrl+"/mkblk/"+e}),logger.debug("up.setOption url: ",qiniuUploadUrl+"/mkblk/"+e)),localStorage.setItem(b.name,that.stringifyJSON({ctx:h,percent:b.percent,total:c.total,offset:c.offset,time:(new Date).getTime()}))}),logger.debug("bind ChunkUploaded event");var k=qiniuUploadUrls.length;var l=function(a){return k-->0?(setTimeout(function(){that.resetUploadUrl(),a.status=plupload.QUEUED,j.stop(),j.start()},0),!0):(k=qiniuUploadUrls.length,!1)};return j.bind("Error",function(a){return function(b,c){logger.error("Error event activated"),logger.error("err: ",c);var d="";var e=c.file;if(e){switch(c.code){case plupload.FAILED:d="\u4e0a\u4f20\u5931\u8d25\u3002\u8bf7\u7a0d\u540e\u518d\u8bd5\u3002";break;case plupload.FILE_SIZE_ERROR:var f=b.getOption&&b.getOption("max_file_size");f=f||b.settings&&b.settings.max_file_size,d="\u6d4f\u89c8\u5668\u6700\u5927\u53ef\u4e0a\u4f20"+f+"\u3002\u66f4\u5927\u6587\u4ef6\u8bf7\u4f7f\u7528\u547d\u4ee4\u884c\u5de5\u5177\u3002";break;case plupload.FILE_EXTENSION_ERROR:d="\u6587\u4ef6\u9a8c\u8bc1\u5931\u8d25\u3002\u8bf7\u7a0d\u540e\u91cd\u8bd5\u3002";break;case plupload.HTTP_ERROR:if(""===c.response){if(d=c.message||"\u672a\u77e5\u7f51\u7edc\u9519\u8bef\u3002",!l(e))return;break}var g=that.parseJSON(c.response);var h=g.error;switch(c.status){case 400:d="\u8bf7\u6c42\u62a5\u6587\u683c\u5f0f\u9519\u8bef\u3002";break;case 401:d="\u5ba2\u6237\u7aef\u8ba4\u8bc1\u6388\u6743\u5931\u8d25\u3002\u8bf7\u91cd\u8bd5\u6216\u63d0\u4ea4\u53cd\u9988\u3002";break;case 405:d="\u5ba2\u6237\u7aef\u8bf7\u6c42\u9519\u8bef\u3002\u8bf7\u91cd\u8bd5\u6216\u63d0\u4ea4\u53cd\u9988\u3002";break;case 579:d="\u8d44\u6e90\u4e0a\u4f20\u6210\u529f\uff0c\u4f46\u56de\u8c03\u5931\u8d25\u3002";break;case 599:if(d="\u7f51\u7edc\u8fde\u63a5\u5f02\u5e38\u3002\u8bf7\u91cd\u8bd5\u6216\u63d0\u4ea4\u53cd\u9988\u3002",!l(e))return;break;case 614:d="\u6587\u4ef6\u5df2\u5b58\u5728\u3002";try{g=that.parseJSON(g.error),h=g.error||"file exists"}catch(i){h=g.error||"file exists"}break;case 631:d="\u6307\u5b9a\u7a7a\u95f4\u4e0d\u5b58\u5728\u3002";break;case 701:d="\u4e0a\u4f20\u6570\u636e\u5757\u6821\u9a8c\u51fa\u9519\u3002\u8bf7\u91cd\u8bd5\u6216\u63d0\u4ea4\u53cd\u9988\u3002";break;default:if(d="\u672a\u77e5\u9519\u8bef\u3002",!l(e))return}d=d+"("+c.status+"\uff1a"+h+")";break;case plupload.SECURITY_ERROR:d="\u5b89\u5168\u914d\u7f6e\u9519\u8bef\u3002\u8bf7\u8054\u7cfb\u7f51\u7ad9\u7ba1\u7406\u5458\u3002";break;case plupload.GENERIC_ERROR:d="\u4e0a\u4f20\u5931\u8d25\u3002\u8bf7\u7a0d\u540e\u518d\u8bd5\u3002";break;case plupload.IO_ERROR:d="\u4e0a\u4f20\u5931\u8d25\u3002\u8bf7\u7a0d\u540e\u518d\u8bd5\u3002";break;case plupload.INIT_ERROR:d="\u7f51\u7ad9\u914d\u7f6e\u9519\u8bef\u3002\u8bf7\u8054\u7cfb\u7f51\u7ad9\u7ba1\u7406\u5458\u3002",j.destroy();break;default:if(d=c.message+c.details,!l(e))return}a&&a(b,c,d)}b.refresh()}}(f)),logger.debug("bind Error event"),j.bind("FileUploaded",function(b){return function(c,e,f){logger.debug("FileUploaded event activated"),logger.debug("file: ",e),logger.debug("info: ",f);var g=function(c,d,e){if(a.downtoken_url){var f=that.createAjax();f.open("POST",a.downtoken_url,!0),f.setRequestHeader("Content-type","application/x-www-form-urlencoded"),f.onreadystatechange=function(){if(4===f.readyState)if(200===f.status){var a;try{a=that.parseJSON(f.responseText)}catch(g){throw"invalid json format"}var h={};plupload.extend(h,that.parseJSON(e),a),b&&b(c,d,that.stringifyJSON(h))}else j.trigger("Error",{status:f.status,response:f.responseText,file:d,code:plupload.HTTP_ERROR})},f.send("key="+that.parseJSON(e).key+"&domain="+a.domain)}else b&&b(c,d,e)};var i=that.parseJSON(f.response);if(h=h?h:i.ctx,logger.debug("ctx: ",h),h){var k="";logger.debug("save_key: ",a.save_key),a.save_key||(k=d(c,e,that.key_handler),k=k?"/key/"+that.URLSafeBase64Encode(k):"");var l="/fname/"+that.URLSafeBase64Encode(e.name);logger.debug("op.x_vars: ",a.x_vars);var m=a.x_vars,n="",o="";if(void 0!==m&&"object"==typeof m)for(var p in m)m.hasOwnProperty(p)&&("function"==typeof m[p]?n=that.URLSafeBase64Encode(m[p](c,e)):"object"!=typeof m[p]&&(n=that.URLSafeBase64Encode(m[p])),o+="/x:"+p+"/"+n);var q=qiniuUploadUrl+"/mkfile/"+e.size+k+l+o;var r=that.detectIEVersion();var s;r&&9>=r?(s=new mOxie.XMLHttpRequest,mOxie.Env.swf_url=a.flash_swf_url):s=that.createAjax(),s.open("POST",q,!0),s.setRequestHeader("Content-Type","text/plain;charset=UTF-8"),s.setRequestHeader("Authorization","UpToken "+that.token);var t=function(){if(logger.debug("ajax.readyState: ",s.readyState),4===s.readyState){localStorage.removeItem(e.name);var a;200===s.status?(a=s.responseText,logger.debug("mkfile is success: ",a),g(c,e,a)):(a={status:s.status,response:s.responseText,file:e,code:-200},logger.debug("mkfile is error: ",a),j.trigger("Error",a))}};r&&9>=r?s.bind("readystatechange",t):s.onreadystatechange=t,s.send(h),logger.debug("mkfile: ",q)}else g(c,e,f.response)}}(g)),logger.debug("bind FileUploaded event"),j.init(),logger.debug("invoke uploader.init()"),logger.debug("init uploader end"),j},this.getUrl=function(a){if(!a)return!1;a=encodeURI(a);var b=this.domain;return"/"!==b.slice(b.length-1)&&(b+="/"),b+a},this.imageView2=function(a,b){var c=a.mode||"",d=a.w||"",e=a.h||"",f=a.q||"",g=a.format||"";if(!c)return!1;if(!d&&!e)return!1;var h="imageView2/"+c;return h+=d?"/w/"+d:"",h+=e?"/h/"+e:"",h+=f?"/q/"+f:"",h+=g?"/format/"+g:"",b&&(h=this.getUrl(b)+"?"+h),h},this.imageMogr2=function(a,b){var c=a["auto-orient"]||"",d=a.thumbnail||"",e=a.strip||"",f=a.gravity||"",g=a.crop||"",h=a.quality||"",i=a.rotate||"",j=a.format||"",k=a.blur||"";var l="imageMogr2";return l+=c?"/auto-orient":"",l+=d?"/thumbnail/"+d:"",l+=e?"/strip":"",l+=f?"/gravity/"+f:"",l+=h?"/quality/"+h:"",l+=g?"/crop/"+g:"",l+=i?"/rotate/"+i:"",l+=j?"/format/"+j:"",l+=k?"/blur/"+k:"",b&&(l=this.getUrl(b)+"?"+l),l},this.watermark=function(a,b){var c=a.mode;if(!c)return!1;var d="watermark/"+c;if(1===c){var e=a.image||"";if(!e)return!1;d+=e?"/image/"+this.URLSafeBase64Encode(e):""}else{if(2!==c)return!1;var f=a.text?a.text:"",g=a.font?a.font:"",h=a.fontsize?a.fontsize:"",i=a.fill?a.fill:"";if(!f)return!1;d+=f?"/text/"+this.URLSafeBase64Encode(f):"",d+=g?"/font/"+this.URLSafeBase64Encode(g):"",d+=h?"/fontsize/"+h:"",d+=i?"/fill/"+this.URLSafeBase64Encode(i):""}var j=a.dissolve||"",k=a.gravity||"",l=a.dx||"",m=a.dy||"";return d+=j?"/dissolve/"+j:"",d+=k?"/gravity/"+k:"",d+=l?"/dx/"+l:"",d+=m?"/dy/"+m:"",b&&(d=this.getUrl(b)+"?"+d),d},this.imageInfo=function(a){if(!a)return!1;var b=this.getUrl(a)+"?imageInfo";var c=this.createAjax();var d;var e=this;return c.open("GET",b,!1),c.onreadystatechange=function(){4===c.readyState&&200===c.status&&(d=e.parseJSON(c.responseText))},c.send(),d},this.exif=function(a){if(!a)return!1;var b=this.getUrl(a)+"?exif";var c=this.createAjax();var d;var e=this;return c.open("GET",b,!1),c.onreadystatechange=function(){4===c.readyState&&200===c.status&&(d=e.parseJSON(c.responseText))},c.send(),d},this.get=function(a,b){return b&&a?"exif"===a?this.exif(b):"imageInfo"===a?this.imageInfo(b):!1:!1},this.pipeline=function(a,b){var c="[object Array]"===Object.prototype.toString.call(a);var d,e,f="";if(c){for(var g=0,h=a.length;h>g;g++){if(d=a[g],!d.fop)return!1;switch(d.fop){case"watermark":f+=this.watermark(d)+"|";break;case"imageView2":f+=this.imageView2(d)+"|";break;case"imageMogr2":f+=this.imageMogr2(d)+"|";break;default:e=!0}if(e)return!1}if(b){f=this.getUrl(b)+"?"+f;var i=f.length;"|"===f.slice(i-1)&&(f=f.slice(0,i-1))}return f}return!1}}var Qiniu=new QiniuJsSDK;global.Qiniu=Qiniu,global.QiniuJsSDK=QiniuJsSDK}(window);
//# sourceMappingURL=dist/qiniu.min.map
\ No newline at end of file
diff --git a/dist/qiniu.min.map b/dist/qiniu.min.map
index 3810d3d2..f6358235 100644
--- a/dist/qiniu.min.map
+++ b/dist/qiniu.min.map
@@ -1 +1 @@
-{"version":3,"file":"dist/qiniu.min.js","sources":["dist/qiniu.js"],"names":["global","createCookie","key","value","exp","date","Date","setTime","getTime","expires","toGMTString","document","cookie","readCookie","nameEQ","ca","split","i","max","length","c","charAt","substring","indexOf","window","localStorage","setItem","getItem","removeItem","QiniuJsSDK","that","this","detectIEVersion","v","div","createElement","all","getElementsByTagName","innerHTML","logger","MUTE","FATA","ERROR","WARN","INFO","DEBUG","TRACE","level","log","type","args","header","msg","stringifyJSON","console","unshift","apply","makeLogFunc","code","func","toLowerCase","Array","prototype","slice","call","arguments","property","hasOwnProperty","qiniuUploadUrl","location","protocol","qiniuUploadUrls","changeUrlTimes","resetUploadUrl","debug","isImage","url","res","suffix","imageSuffixes","suffixMatch","test","exec","l","getFileExtension","filename","tempArr","ext","pop","utf8_encode","argString","string","utftext","start","end","stringl","n","c1","charCodeAt","enc","String","fromCharCode","RangeError","c2","base64_encode","data","b64","o1","o2","o3","h1","h2","h3","h4","bits","ac","tmp_arr","join","URLSafeBase64Encode","replace","createAjax","argument","xmlhttp","XMLHttpRequest","ActiveXObject","parseJSON","JSON","parse","rx_dangerous","text","lastIndex","a","toString","eval","obj","stringify","map","strArr","len","push","trim","uploader","op","reset_chunk_size","ie","BLOCK_BITS","MAX_CHUNK_SIZE","chunk_size","isSpecialSafari","mOxie","Env","browser","version","os","osVersion","runtimes","plupload","parseSize","getUpToken","uptoken","token","ajax","open","uptoken_url","setRequestHeader","onreadystatechange","readyState","status","responseText","send","getFileKey","up","file","unique_names","save_key","getOption","settings","name","id","log_level","domain","browse_button","navigator","userAgent","option","_Error_Handler","init","Error","_FileUploaded_Handler","FileUploaded","key_handler","Key","ctx","speedCalInfo","isResumeUpload","resumeFilesize","startTime","currentTime","extend","multipart_params","Uploader","bind","params","get_new_uptoken","files","auto_start","setTimeout","refresh","speed","directUpload","multipart_params_obj","x_vars","undefined","x_key","setOption","multipart","is_android_weixin_or_qq","max_file_size","ua","match","OS","runtime","size","localFileInfo","blockSize","now","before","time","aDay","percent","total","loaded","offset","required_features","headers","Authorization","trace","timeUsed","fileUploaded","toFixed","info","response","leftSize","retries","unknow_error_retry","QUEUED","stop","err","error","errTip","FAILED","FILE_SIZE_ERROR","FILE_EXTENSION_ERROR","HTTP_ERROR","message","errorObj","errorText","e","SECURITY_ERROR","GENERIC_ERROR","IO_ERROR","INIT_ERROR","destroy","details","last_step","downtoken_url","ajax_downtoken","res_downtoken","info_extended","trigger","fname","x_val","x_vars_url","swf_url","flash_swf_url","getUrl","encodeURI","imageView2","mode","w","h","q","format","imageUrl","imageMogr2","auto_orient","thumbnail","strip","gravity","crop","quality","rotate","blur","watermark","image","font","fontsize","fill","dissolve","dx","dy","imageInfo","xhr","exif","get","pipeline","arr","isArray","Object","errOp","fop","Qiniu"],"mappings":"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"}
\ No newline at end of file
+{"version":3,"file":"dist/qiniu.min.js","sources":["dist/qiniu.js"],"names":["global","createCookie","key","value","exp","date","Date","setTime","getTime","expires","toGMTString","document","cookie","readCookie","nameEQ","ca","split","i","max","length","c","charAt","substring","indexOf","window","localStorage","setItem","getItem","removeItem","QiniuJsSDK","that","this","detectIEVersion","v","div","createElement","all","getElementsByTagName","innerHTML","logger","MUTE","FATA","ERROR","WARN","INFO","DEBUG","TRACE","level","log","type","args","header","msg","stringifyJSON","console","unshift","apply","getElementById","msg1","j","makeLogFunc","code","func","toLowerCase","Array","prototype","slice","call","arguments","property","hasOwnProperty","qiniuUploadUrl","location","protocol","qiniuUploadUrls","changeUrlTimes","resetUploadUrl","debug","isImage","url","test","getFileExtension","filename","tempArr","ext","pop","utf8_encode","argString","string","utftext","start","end","stringl","n","c1","charCodeAt","enc","String","fromCharCode","RangeError","c2","base64_encode","data","b64","o1","o2","o3","h1","h2","h3","h4","bits","ac","tmp_arr","join","URLSafeBase64Encode","replace","createAjax","argument","xmlhttp","XMLHttpRequest","ActiveXObject","parseJSON","JSON","parse","rx_dangerous","text","lastIndex","a","toString","eval","obj","stringify","map","strArr","len","push","trim","uploader","op","reset_chunk_size","ie","BLOCK_BITS","MAX_CHUNK_SIZE","chunk_size","isSpecialSafari","mOxie","Env","browser","version","os","osVersion","runtimes","plupload","parseSize","getUpToken","file","uptoken","token","uptoken_url","uptoken_func","error","ajax","open","setRequestHeader","send","status","res","responseText","getFileKey","up","unique_names","save_key","getOption","settings","name","id","log_level","domain","browse_button","navigator","userAgent","option","_Error_Handler","init","Error","_FileUploaded_Handler","FileUploaded","key_handler","Key","ctx","speedCalInfo","isResumeUpload","resumeFilesize","startTime","currentTime","extend","multipart_params","Uploader","bind","params","get_new_uptoken","files","auto_start","setTimeout","refresh","speed","directUpload","multipart_params_obj","x_vars","undefined","x_key","setOption","multipart","is_android_weixin_or_qq","max_file_size","ua","match","OS","runtime","size","localFileInfo","blockSize","now","before","time","aDay","percent","total","loaded","offset","required_features","headers","Authorization","trace","timeUsed","fileUploaded","toFixed","info","response","leftSize","retries","unknow_error_retry","QUEUED","stop","err","errTip","FAILED","FILE_SIZE_ERROR","FILE_EXTENSION_ERROR","HTTP_ERROR","message","errorObj","errorText","e","SECURITY_ERROR","GENERIC_ERROR","IO_ERROR","INIT_ERROR","destroy","details","last_step","downtoken_url","ajax_downtoken","onreadystatechange","readyState","res_downtoken","info_extended","trigger","fname","x_val","x_vars_url","swf_url","flash_swf_url","getUrl","encodeURI","imageView2","mode","w","h","q","format","imageUrl","imageMogr2","auto_orient","thumbnail","strip","gravity","crop","quality","rotate","blur","watermark","image","font","fontsize","fill","dissolve","dx","dy","imageInfo","xhr","exif","get","pipeline","arr","isArray","Object","errOp","fop","Qiniu"],"mappings":"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"}
\ No newline at end of file
diff --git a/src/qiniu.js b/src/qiniu.js
index 7bfbd599..13986f09 100644
--- a/src/qiniu.js
+++ b/src/qiniu.js
@@ -115,6 +115,13 @@ function QiniuJsSDK() {
args.unshift(header);
console.log.apply(console, args);
}
+ if (document.getElementById('qiniu-js-sdk-log')) {
+ var msg1 = header;
+ for (var j = 0; j < args.length; j++) {
+ msg1+=that.stringifyJSON(args[j]);
+ }
+ document.getElementById('qiniu-js-sdk-log').innerHTML += ''+msg1+'
';
+ }
}
function makeLogFunc(code){
@@ -507,25 +514,43 @@ function QiniuJsSDK() {
// if op.chunk_size set 0 will be cause to direct upload
};
- // if op.uptoken has no value
- // get token from 'uptoken_url'
- // else
- // set token to be op.uptoken
- var getUpToken = function() {
- if (!op.uptoken) {
+ // getUptoken maybe called at Init Event or BeforeUpload Event
+ // case Init Event, the file param of getUptken will be set null value
+ // if op.uptoken has value, set uptoken with op.uptoken
+ // else if op.uptoken_url has value, set uptoken from op.uptoken_url
+ // else if op.uptoken_func has value, set uptoken by result of op.uptoken_func
+ var getUpToken = function(file) {
+ if (op.uptoken) {
+ that.token = op.uptoken;
+ return;
+ } else if (op.uptoken_url) {
+ logger.debug("get uptoken from: ", that.uptoken_url);
// TODO: use mOxie
var ajax = that.createAjax();
- ajax.open('GET', that.uptoken_url, true);
+ ajax.open('GET', that.uptoken_url, false);
ajax.setRequestHeader("If-Modified-Since", "0");
- ajax.onreadystatechange = function() {
- if (ajax.readyState === 4 && ajax.status === 200) {
- var res = that.parseJSON(ajax.responseText);
- that.token = res.uptoken;
- }
- };
+ // ajax.onreadystatechange = function() {
+ // if (ajax.readyState === 4 && ajax.status === 200) {
+ // var res = that.parseJSON(ajax.responseText);
+ // that.token = res.uptoken;
+ // }
+ // };
ajax.send();
+ if (ajax.status === 200) {
+ var res = that.parseJSON(ajax.responseText);
+ that.token = res.uptoken;
+ logger.debug("get new uptoken: ", res.uptoken);
+ } else {
+ logger.error("get uptoken error: ", ajax.responseText);
+ }
+ return;
+ } else if (op.uptoken_func) {
+ logger.debug("get uptoken from uptoken_func");
+ that.token = op.uptoken_func(file);
+ logger.debug("get new uptoken: ", that.token);
+ return;
} else {
- that.token = op.uptoken;
+ logger.error("one of [uptoken, uptoken_url, uptoken_func] settings in options is required!");
}
};
@@ -563,6 +588,10 @@ function QiniuJsSDK() {
throw 'browse_button setting in options is required!';
}
+ if (!op.uptoken && !op.uptoken_url && !op.uptoken_func) {
+ throw 'one of [uptoken, uptoken_url, uptoken_func] settings in options is required!';
+ }
+
logger.debug("init uploader start");
logger.debug("environment: ", mOxie.Env);
@@ -617,12 +646,12 @@ function QiniuJsSDK() {
logger.debug("Init event activated");
// if op.get_new_uptoken is not true
// invoke getUptoken when uploader init
- // else
+ // else
// getUptoken everytime before a new file upload
if(!op.get_new_uptoken){
- getUpToken();
+ getUpToken(null);
}
- getUpToken();
+ //getUpToken(null);
});
logger.debug("bind Init event");
@@ -665,7 +694,7 @@ function QiniuJsSDK() {
ctx = '';
if(op.get_new_uptoken){
- getUpToken();
+ getUpToken(file);
}
var directUpload = function(up, file, func) {