NodeJS使用七牛云存储上传文件的方法
发布时间 - 2026-01-11 02:29:44 点击率:次1-准备工作

确认安装node和npm
安装 qiniu,formidable,express模块
npm install --save qiniu formidable
[x] 导入模块
let qiniu = require('qiniu'),
formidable = require('formidable'),
express = require('express'),
router = express.Router();
2-服务器端的云存储操作
2-1文件上传
router.post('/qiniu', function (req, res, next) {
let bucket = '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 = new qiniu.rs.PutPolicy(bucket + ':' + key)
//设置回调
// putPolicy.callbackUrl = 'http://localhost:81/test/callback'
// putPolicy.callbackBody = 'filename=$(fname)&filesize=$(fsize)'
token = putPolicy.token()
console.log('token', token)
let extra = new qiniu.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) {
let url = 'http://xxxx.bkt.clouddn.com/' + req.params.key,
policy = new qiniu.rs.GetPolicy();
console.log(url);
res.json({url: policy.makeRequest(url)})
})
文件获取
router.get('/info/:key', function (req, res, next) {
let bucket = 'myblog',
key = req.params.key,
client = new qiniu.rs.Client();
client.stat(bucket, key, (err, ret) => {
if (err) {
console.log(err);
}
res.json(ret);
})
})
总结
以上所述是小编给大家介绍的NodeJS使用七牛云存储上传文件的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
# nodejs七牛云存储上传文件
# 七牛云
# nodejs
# 七牛云上传文件
# node ftp上传文件夹到服务器案例详解
# element-ui配合node实现自定义上传文件方式
# Node.js连接mongo数据库上传文件的方法步骤
# node.js实现上传文件功能
# Node.js上传文件功能之服务端如何获取文件上传进度
# 在Node.js中使用HTTP上传文件的方法
# nodejs 实现模拟form表单上传文件
# 在 node 中使用 koa-multer 库上传文件的方式详解
# 小编
# 在此
# 给大家
# 准备工作
# 所述
# 回调
# 给我留言
# 感谢大家
# 上传文件
# 文件上传
# 疑问请
# 有任何
# IncomingForm
# token
# myblog
# putPolicy
# form
# bucket
# res
# key
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Python函数文档自动校验_规范解析【教程】
UC浏览器如何切换小说阅读源_UC浏览器阅读源切换【方法】
绝密ChatGPT指令:手把手教你生成HR无法拒绝的求职信
HTML5空格和nbsp有啥关系_nbsp的作用及使用场景【说明】
如何实现javascript表单验证_正则表达式有哪些实用技巧
C++时间戳转换成日期时间的步骤和示例代码
Laravel如何实现多对多模型关联?(Eloquent教程)
Claude怎样写约束型提示词_Claude约束提示词写法【教程】
php在windows下怎么调试_phpwindows环境调试操作说明【操作】
北京专业网站制作设计师招聘,北京白云观官方网站?
Firefox Developer Edition开发者版本入口
Laravel如何生成URL和重定向?(路由助手函数)
Zeus浏览器网页版官网入口 宙斯浏览器官网在线通道
详解Huffman编码算法之Java实现
如何在局域网内绑定自建网站域名?
标题:Vue + Vuex + JWT 身份认证的正确实践与常见误区解析
ChatGPT常用指令模板大全 新手快速上手的万能Prompt合集
Android中Textview和图片同行显示(文字超出用省略号,图片自动靠右边)
网站建设保证美观性,需要考虑的几点问题!
php json中文编码为null的解决办法
如何在Windows虚拟主机上快速搭建网站?
Windows Hello人脸识别突然无法使用
如何用AWS免费套餐快速搭建高效网站?
html文件怎么打开证书错误_https协议的html打开提示不安全【指南】
Laravel如何生成PDF或Excel文件_Laravel文档导出工具与使用教程
如何快速搭建高效可靠的建站解决方案?
Java遍历集合的三种方式
详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)
郑州企业网站制作公司,郑州招聘网站有哪些?
JavaScript如何实现错误处理_try...catch如何捕获异常?
怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?
Win11搜索不到蓝牙耳机怎么办 Win11蓝牙驱动更新修复【详解】
PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)
弹幕视频网站制作教程下载,弹幕视频网站是什么意思?
如何登录建站主机?访问步骤全解析
Bootstrap整体框架之CSS12栅格系统
七夕网站制作视频,七夕大促活动怎么报名?
如何快速查询网站的真实建站时间?
javascript基于原型链的继承及call和apply函数用法分析
如何使用 Go 正则表达式精准提取括号内首个纯字母标识符(忽略数字与嵌套)
详解jQuery中的事件
怎么用AI帮你为初创公司进行市场定位分析?
如何在阿里云ECS服务器部署织梦CMS网站?
如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?
标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?
,网页ppt怎么弄成自己的ppt?
Midjourney怎么调整光影效果_Midjourney光影调整方法【指南】
Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】
上一篇:大良网站建设如何实现多终端覆盖?
上一篇:大良网站建设如何实现多终端覆盖?

