var uploader = Qiniu.uploader({
runtimes: ‘html5,flash,html4’,
browse_button: ‘file’,//上传按钮的ID
max_file_size: ‘100mb’,//最大文件限制
uptoken_url: ‘getToken.do’, //Ajax请求upToken的Url,强烈建议设置(服务端提供)
/* uptoken_func:token,*/
dragdrop: false,
unique_names:true,
chunk_size: ‘4mb’,
/*
uptoken:token,
*/
domain: ”,//自己的七牛云存储空间域名
multi_selection: false,//是否允许同时选择多文件
//文件类型过滤,这里限制为图片类型
filters: {
mime_types : [
{title : “Image files”, extensions: “jpg,jpeg,gif,png”}
]
},
auto_start: true,
init: {
‘FilesAdded’: function(up, files) {
for (var i = 0; i < files.length; i++) {
showPreview (files[i]);
}
//do something
},
‘BeforeUpload’: function(up, file) {
//do something
},
‘UploadProgress’: function(up, file) {
//可以在这里控制上传进度的显示
//可参考七牛的例子
},
‘UploadComplete’: function() {
//do something
},
‘FileUploaded’: function(up, file, info) {
//每个文件上传成功后,处理相关的事情
//其中 info 是文件上传成功后,服务端返回的json
var domain = up.getOption(‘domain’);
var res = eval(‘(’ + info + ‘)’);
var sourceLink = domain + res.key;//获取上传文件的链接地址
$(“#icon”).val(sourceLink);
},
}
});
获取token的方式最好采用上面的url方式获取,从你的后台程序得到,值得注意的是,你的后台返回token的格式应该为{“uptoken“:”…………”}这样的json格式才会被七牛识别,不然一直401错误。
auto_start: true,这个属性设置为true的话,在你浏览图片选定的时候就会自动上传服务器。
‘FilesAdded’: function(up, files) {
for (var i = 0; i < files.length; i++) {
showPreview (files[i]);
}
//do something
},
function showPreview (file) {
var preloader = new mOxie.Image();
preloader.onload = function() {
$(“#img”).attr( “src”, preloader.getAsDataURL() );
};
preloader.load( file.getSource() );
}