1.問題描述:
整個流程是:使用七牛jssdk上傳至七??臻g,比如上傳圖片為1.jpg,上傳后,服務(wù)端寫好了刪除七??臻g中文件的接口,前段ajax調(diào)用接口去刪除剛才的1.jpg,這個時候,用戶發(fā)現(xiàn)自己刪除錯了,需要重新上傳1.jpg,然后就會報這個錯誤
2.代碼:
前端上傳
var obj_stepup = new QiniuJsSDK(),
par_stepup = pubFun.pubqiniuup({
browse_button: 'stepthumb',
container: 'stepthumbparent',
drop_element: 'stepthumbparent',
domain: 'http://oev0goahc.bkt.clouddn.com',
get_new_uptoken: false,
auto_start: true,
log_level: 5,
unique_names: false,
save_key: false ,
multi_selection:false,
filters : {
max_file_size : '100mb',
prevent_duplicates: true,
// Specify what files to browse for
mime_types: [
{title : "Image files", extensions : "jpg,gif,png"} // 限定jpg,gif,png后綴上傳
]
},
uptoken_func: function(){
var obj_token={};
$.ajax({
url:'file/gettoken',
type:'post',
data:{space:'stepimgspace'},
async:false,
success:function(_data){
if('suc'==_data.msg){
obj_token['uptoken'] = _data.data.uptoken;
}
},
error:function(){
}
});
return obj_token.uptoken;
},
init: {
'FilesAdded': function(up, files) {
},
'UploadComplete': function() {
},
'FileUploaded': function(up, file, info) {
},
'Error': function(up, err, errTip) {
console.log(789,up,err,errTip)
},
'Key': function(up, file) {
var key = file.name;
// do something with key
return key
}
}
}),
setpupload = obj_stepup.uploader(par_stepup);
刪除ajax:
$.ajax({
url:'file/delqiniu',
data:{data:JSON.stringify(par.obj_imgname)},
success:function(_data){
},error:function(){
}
});
后臺刪除方法:
delqiniu(_this,_call){
let i=0;
let obj_arr = [];
qiniu.conf.ACCESS_KEY = '****************************************';
qiniu.conf.SECRET_KEY = '****************************************';
//構(gòu)建bucketmanager對象
let client = new qiniu.rs.Client();
let obj_data = JSON.parse(_this.paramValue('data'));
for (let value in obj_data) {
obj_arr.push(obj_data[value]);
}
//你要測試的空間, 并且這個key在你空間中存在
let bucket = obj_data.space;
function removefile(){
var key = obj_arr[i];
client.remove(bucket, key, function(err, ret) {
if (!err) {
i++;
console.log(5555555,i);
if(i==obj_arr.length-1){
_call({msg:'suc',id:10007});
return;
}
removefile();
} else {
if(612==err.code){
_call({msg:'suc',id:10007});
return;
}
console.log(err);
}
});
}
// //刪除資源
removefile();
}
獲取token:
gettoken(_this,_call){
var qiniu = require("qiniu");
var str_space = _this.paramValue('space');
qiniu.conf.ACCESS_KEY = '****************************************';
qiniu.conf.SECRET_KEY = '****************************************';
var bucket = str_space;
console.log(11111,bucket,str_space);
function uptoken(bucket) {
var putPolicy = new qiniu.rs.PutPolicy(bucket);
console.log(putPolicy,putPolicy.token());
return putPolicy.token();
}
var token = uptoken(bucket);
console.log(token);
_call({id:'10006',msg:'suc',result:{uptoken:token}});
}
3.報錯信息:
4.嘗試解決:
自己覺得是inputtype=“file”中存在之前的文件信息,我嘗試創(chuàng)建一個一樣的input去替換原來的 能彈出上傳文件的框 但無法上傳了.希望有會的大神指點指點
北大青鳥APTECH成立于1999年。依托北京大學優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
達內(nèi)教育集團成立于2002年,是一家由留學海歸創(chuàng)辦的高端職業(yè)教育培訓機構(gòu),是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學校辦產(chǎn)業(yè)為響應(yīng)國家深化產(chǎn)教融合/校企合作的政策,積極推進“中國制造2025”,實現(xiàn)中華民族偉大復興的升級產(chǎn)業(yè)鏈。利用北京大學優(yōu)質(zhì)教育資源及背
博為峰,中國職業(yè)人才培訓領(lǐng)域的先行者
曾工作于聯(lián)想擔任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔任項目經(jīng)理從事移動互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責任公司從事總經(jīng)理職務(wù)負責iOS教學及管理工作。
浪潮集團項目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺面向?qū)ο箝_發(fā)經(jīng)驗,技術(shù)功底深厚。 授課風格 授課風格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。