免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Express 實現(xiàn)圖片上傳功能小案例
表白:黑白圣堂血天使,天劍鬼刀阿修羅。 
講解對象:
/Express 實現(xiàn)圖片上傳功能小案例
作者:融水公子 rsgz
===

Express 實現(xiàn)文件上傳功能小案例

1 首先 下面這幾個包準備好
npm i express
npm i body-parser  // 獲取請求體數(shù)據(jù) 的中間件  www.npmjs.com/package/body-parser
npm i -g express-generator@4.16.1  // 應(yīng)用生成器 腳手架
npm i formidable@2.1.2  // 方便處理文件請求    npmjs.com/package/formidable

2 然后呢  需要通過 命令生成應(yīng)用
會自動生成25-generator文件夾 然后 安裝項目依賴

express -e 25-generator
npm i  // 安裝項目依賴

3 之后我們修改一下 package json里面的script  node改成nodemon

4 啟動項目 
這個時候可以不用 啟動項目 是一個默認的頁面沒什么好看的
npm start

5 views ejs里面加上一個portrait.ejs
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>文件上傳</title>
</head>
<body>
    <h2>文件上傳</h2>
    <hr />
    <!-- 文件上傳的必須屬性 -->
    <form action="/portrait" method="post" enctype="multipart/form-data">
        用戶名:<input type="text" name="username"/> <br />
        頭像:<input type="file" name="portrait"/>
        <button>提交</button>
        <input type="submit" value="Upload" />
    </form>
</body>
</html>

最主要演示的就是文件上傳功能form表單 post請求就夠用了

6 index.js 里面添加formidable 處理圖片的邏輯
主要是 引入formidable包,創(chuàng)建一個form對象,通過form.parse解析請求報文
uploadDir  設(shè)置靜態(tài)文件的保存目錄
keepExtensions   保持文件后綴
// formidable 處理post請求
router.post('/portrait', (req, res, next)=>{
  // 創(chuàng)建表單對象
  const form = formidable({
    multiples:true,
    // 設(shè)置靜態(tài)文件的保存目錄
    uploadDir:__dirname+'/../public/images',
    // 保持文件后綴
    keepExtensions:true,
  });

  // 解析請求報文
  form.parse(req, (err, fields, files) => {
    if (err) {
      next(err);
      return;
    }
    // res.json({ fields, files });
    /**
     *  fields 對象 存儲鍵值對 存儲那些 一般字段 text radio  checkbox salect
     * files 存儲的都是 file 數(shù)據(jù)
     */

    // res.send('收到了!');

    let url = '/images/'+files.portrait.newFilename;  // /images/41273eea56ed67ff84cc70200.png
    res.send(url);
  });

});

上面的邏輯部分處理好之后呢 
運行項目 
npm start

瀏覽器訪問這個地址  就是發(fā)送一個get請求,會渲染一個portrait.ejs 頁面
里面填寫好信息 上傳好圖片之后,點擊提交的時候 就是發(fā)送一個post請求
結(jié)果會res.send(url)響應(yīng)一個 圖片的拼接地址




===
 
公眾號:不浪仙人
謝謝大家的支持!可以點擊我的頭像,進入我的空間瀏覽更多文章呢。建議大家360doc[www.360doc.com]注冊一個賬號登錄,里面真的有很多優(yōu)秀的文章,歡迎大家的到來。
---
';
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
專門針對初學者的Node.js教程
Nodejs學習筆記(八)--- Node.js + Express 實現(xiàn)上傳文件功能(felixge/node-formidable)
Express.js req.cookies用法及代碼示例
npm publish 發(fā)布一個 Angular 庫的時候報錯以及解決方法
Node.js開發(fā)Web后臺服務(wù)
解決:無法加載文件 C:\\Program Files\\.. 因為在此系統(tǒng)上禁止運行腳本。
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服