NodeJS使用七牛云存储上传文件的方法
1-准备工作
确认安装node和npm
安装qiniu,formidable,express模块
npminstall--saveqiniuformidable
[x]导入模块
letqiniu=require('qiniu'),
formidable=require('formidable'),
express=require('express'),
router=express.Router();
2-服务器端的云存储操作
2-1文件上传
router.post('/qiniu',function(req,res,next){
letbucket='myblog',
key='',
form=formidable.IncomingForm(),
token,putPolicy;
form.uploadDir=path.join(__dirname,'../../','public/img/upload');
form.keepExtensions=true
form.parse(req,function(err,fields,files){
if(err){
console.log(err);
}
key=files.mypic.path.split(path.sep).pop();
putPolicy=newqiniu.rs.PutPolicy(bucket+':'+key)
//设置回调
//putPolicy.callbackUrl='http://localhost:81/test/callback'
//putPolicy.callbackBody='filename=$(fname)&filesize=$(fsize)'
token=putPolicy.token()
console.log('token',token)
letextra=newqiniu.io.PutExtra()
qiniu.io.putFile(token,key,files.mypic.path,extra,function(err,ret){
if(err){
console.log(err)
}
console.log('ret',ret);
res.json({
token:token,
ret:ret,
files:files,
fields:fields
})
})
})
})
文件下载
router.get('/download/:key',function(req,res,next){
leturl='http://xxxx.bkt.clouddn.com/'+req.params.key,
policy=newqiniu.rs.GetPolicy();
console.log(url);
res.json({url:policy.makeRequest(url)})
})
文件获取
router.get('/info/:key',function(req,res,next){
letbucket='myblog',
key=req.params.key,
client=newqiniu.rs.Client();
client.stat(bucket,key,(err,ret)=>{
if(err){
console.log(err);
}
res.json(ret);
})
})
总结
以上所述是小编给大家介绍的NodeJS使用七牛云存储上传文件的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!
热门推荐
10 小红书平安祝福语简短
11 生日祝福语大全女孩简短
12 收生日红包祝福语 简短
13 领证幽默祝福语简短
14 法考面试祝福语简短
15 老哥出门祝福语简短语
16 送灯祝福语简短独特
17 幼儿狗年祝福语大全简短
18 好听的元旦简短祝福语