上傳圖片到七牛雲
阿新 • • 發佈:2019-01-04
$(function(){
$('.pickImg').change(function(){
var file = this.files[0];
var key = file.name;
var fileType =key.substr(key.lastIndexOf('.'));//檔案字尾名
$.ajax({
type:"post" ,
url:"獲取token和domain的地址",
success:function(data){
var result = JSON.parse(data).Result;
var domain = result.Domain;
var uptoken = result.UpToken;
var UniqueKey = result.UniqueKey;
//設定這個方法的裡面的幾個引數:qiniu.upload(file, key, uptoken, putExtra, config);observable.subscribe(observer);
var putExtra = {
fname: "",
params: {},
mimeType: ["image/png" , "image/jpeg", "image/gif"]
};
var config = {
useCdnDomain: true,
region: qiniu.region.z0
};
var observer = {
next(res){
},
error(err){
alert('上傳失敗');
},
complete(res){
var _url = domain + '/' + res.key + '?imageView2/2/w/400';//上傳成功之後得到的網路地址
console.log(_url);
var reader = new FileReader();
//使用該物件讀取file檔案
reader.readAsDataURL(file);
//讀取檔案成功後執行的方法函式
reader.onload=function(e){
//讀取成功後返回的一個引數e,整個的一個進度事件
console.log(e);
//e.target.result;顯示的是本地的地址
//選擇所要顯示圖片的img,要賦值給img的src就是e中target下result裡面
//的base64編碼格式的地址
var $img = '<div class="imgBox">'+
'<img src="'+_url+'" class="imgshow"/>'+
'</div>';
$('.pickFileBox').before($img);
//
}
}
};
var observable = qiniu.upload(file, key, uptoken, putExtra, config);
observable.subscribe(observer);//上傳開始
}
});
});
});