全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

NodeJS使用七牛云存储上传文件的方法

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 


相关文章: 简易网站制作视频教程,使用记事本编写一个简单的网页html文件?  建站上市公司网站建设方案与SEO优化服务定制指南  如何在Windows 2008云服务器安全搭建网站?  如何快速生成可下载的建站源码工具?  网站制作专业公司有哪些,如何制作一个企业网站,建设网站的基本步骤有哪些?  建站之星后台管理系统如何操作?  php json中文编码为null的解决办法  如何用花生壳三步快速搭建专属网站?  如何通过万网虚拟主机快速搭建网站?  C++如何将C风格字符串(char*)转换为std::string?(代码示例)  如何打造高效商业网站?建站目的决定转化率  矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?  如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?  广东专业制作网站有哪些,广东省能源集团有限公司官网?  如何在宝塔面板创建新站点?  建站之星后台密码遗忘或太弱?如何重置与强化?  如何正确选择百度移动适配建站域名?  常州企业建站如何选择最佳模板?  国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?  猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?  设计网站制作公司有哪些,制作网页教程?  建站主机与虚拟主机有何区别?如何选择最优方案?  上海网站制作网页,上海本地的生活网站有哪些?最好包括生活的各个方面的?  如何解决ASP生成WAP建站中文乱码问题?  教程网站设计制作软件,怎么创建自己的一个网站?  教学论文网站制作软件有哪些,写论文用什么软件 ?  建站之星手机一键生成:多端自适应+小程序开发快速建站指南  网页设计与网站制作内容,怎样注册网站?  宝塔新建站点为何无法访问?如何排查?  html制作网站的步骤有哪些,iapp如何添加网页?  宿州网站制作公司兴策,安徽省低保查询网站?  建站与域名管理如何高效结合?  公众号网站制作网页,微信公众号怎么制作?  如何在云主机上快速搭建多站点网站?  如何在万网自助建站平台快速创建网站?  C#怎么使用委托和事件 C# delegate与event编程方法  Thinkphp 中 distinct 的用法解析  SAX解析器是什么,它与DOM在处理大型XML文件时有何不同?  电影网站制作价格表,那些提供免费电影的网站,他们是怎么盈利的?  新网站制作渠道有哪些,跪求一个无线渠道比较强的小说网站,我要发表小说?  建站之星云端配置指南:模板选择与SEO优化一键生成  C#怎么创建控制台应用 C# Console App项目创建方法  网站制作企业,网站的banner和导航栏是指什么?  香港服务器选型指南:免备案配置与高效建站方案解析  广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?  网站制作公司排行榜,四大门户网站排名?  建站之星3.0如何解决常见操作问题?  建站之星安装步骤有哪些常见问题?  建站之星安装提示数据库无法连接如何解决?  如何用已有域名快速搭建网站? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。