欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

NodeJS使用七牛云存儲上傳文件的方法

 更新時間:2017年07月24日 16:00:20   作者:tristelz  
這篇文章主要介紹了NodeJS使用七牛云存儲上傳文件的方法,使用七牛云存儲上傳文件確認安裝node和npm,具體服務器端的云存儲操作方法大家參考下本文吧

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)
  //設置回調(diào)
  // 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使用七牛云存儲上傳文件的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關文章

  • node.js從數(shù)據(jù)庫獲取數(shù)據(jù)

    node.js從數(shù)據(jù)庫獲取數(shù)據(jù)

    這篇文章主要為大家詳細介紹了node.js從數(shù)據(jù)庫獲取數(shù)據(jù)的具體代碼,nodejs可以獲取具體某張數(shù)據(jù)表信息,感興趣的朋友可以參考一下
    2016-05-05
  • npm報錯"A?complete?log?of?this?run?can?be?found?in:"的解決辦法

    npm報錯"A?complete?log?of?this?run?can?be?found?

    這篇文章主要給大家介紹了關于npm報錯"A?complete?log?of?this?run?can?be?found?in:"的解決辦法,文中通過實例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2023-04-04
  • node異步使用await和不用await的區(qū)別實例分析

    node異步使用await和不用await的區(qū)別實例分析

    這篇文章主要介紹了node異步使用await和不用await的區(qū)別,結合實例形式分析了node.js異步使用await和不用await的實例中,同步與異步執(zhí)行的區(qū)別,需要的朋友可以參考下
    2023-06-06
  • 使用Nodejs獲取bing每日圖片

    使用Nodejs獲取bing每日圖片

    這篇文章主要為大家詳細介紹了如何使用Nodejs獲取bing每日圖片,文中的示例代碼講解詳細,具有一定的借鑒價值,有興趣的小伙伴可以學習一下
    2023-12-12
  • mac下安裝node.js的詳細步驟

    mac下安裝node.js的詳細步驟

    Node.js本質(zhì)上是一個JavaScript運行時環(huán)境,它提供了在服務器端運行JavaScript代碼的能力,這篇文章主要給大家介紹了關于mac下安裝node.js的詳細步驟,需要的朋友可以參考下
    2023-10-10
  • Node.js操作MongoDB數(shù)據(jù)庫實例分析

    Node.js操作MongoDB數(shù)據(jù)庫實例分析

    這篇文章主要介紹了Node.js操作MongoDB數(shù)據(jù)庫,結合實例形式分析了node.js連接MongoDB數(shù)據(jù)庫以及增刪改查等相關操作技巧,需要的朋友可以參考下
    2020-01-01
  • node.js中使用socket.io制作命名空間

    node.js中使用socket.io制作命名空間

    這篇文章主要介紹了node中使用socket.io制作命名空間,需要的朋友可以參考下
    2014-12-12
  • node.js中RPC(遠程過程調(diào)用)的實現(xiàn)原理介紹

    node.js中RPC(遠程過程調(diào)用)的實現(xiàn)原理介紹

    這篇文章主要介紹了node.js中RPC(遠程過程調(diào)用)的實現(xiàn)原理介紹,本文基于一個簡單的RPC庫nodejs light_rpc實現(xiàn),需要的朋友可以參考下
    2014-12-12
  • Node.js中的進程間通信

    Node.js中的進程間通信

    這篇文章主要介紹了Node.js中的進程間通信,文章圍繞主題展開詳細的內(nèi)容戒殺,具有一定的參考價值,感興趣的小伙伴可以參考一下
    2022-09-09
  • node.js自動上傳ftp的腳本分享

    node.js自動上傳ftp的腳本分享

    這篇文章主要給大家介紹了一個關于node.js自動上傳ftp腳本的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面隨著小編來一起學習學習吧
    2018-06-06

最新評論