亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

express的中間件bodyParser詳解

 更新時(shí)間:2014年12月04日 10:33:20   投稿:hebedich  
這篇文章主要介紹了node.js中express的中間件bodyParser的使用方法,需要的朋友可以參考下

bodyParser用于解析客戶端請(qǐng)求的body中的內(nèi)容,內(nèi)部使用JSON編碼處理,url編碼處理以及對(duì)于文件的上傳處理.

下面是一個(gè)文件上傳的例子.

建立一個(gè)1.html頁(yè)面

復(fù)制代碼 代碼如下:

 <!DOCTYPE html>
 <html>
 <head lang="en">
     <meta charset="UTF-8">
     <title>向服務(wù)器上傳文件</title>
     <script type="text/javascript">       
         function uploadFile(){
             var formData=new FormData();
             var files=document.getElementById("files").files;
             var file=files[0];
             formData.append("myfile",file);
             var xhr=new XMLHttpRequest();
             xhr.open("post","index.html",true);
             xhr.onload= function (e) {
                 if(this.status==200)
                     document.getElementById("result").innerHTML=this.response;
             };
             xhr.send(formData);
         }
     </script>
 </head>
 <body>
 請(qǐng)選擇文件:<input type="file" id="files" name="file" />
 <input type="button" value="上傳文件" onclick="uploadFile();" />
 <div id="result"></div>
 </body>
 </html>

上面的XMLHttpRequest對(duì)象與FormData對(duì)象時(shí)HTML5中的內(nèi)容,不作重點(diǎn)講解.用這兩個(gè)對(duì)象可以將用戶選取的文件上傳到服務(wù)器端,.

在服務(wù)器端使用了app.use(express.bodyParser())中間件之后,代表客戶端請(qǐng)求的http.IncomingMessage,也就是res對(duì)象就具有了一個(gè)files屬性.

server.js端代碼:

復(fù)制代碼 代碼如下:

 var express=require("express");
 var fs=require("fs");
 var app=express();
 app.use(express.bodyParser());
 app.get("/index.html", function (req,res) {
     res.sendfile(__dirname+"/1.html");
 });
 app.post("/index.html", function (req,res) {
     var file=req.files.myfile;
     fs.readFile(file.path, function (err,data) {
         if(err) res.send("讀文件操作失敗");
         else{
             fs.writeFile(file.name,data, function (err) {
                 if(err) res.send("寫(xiě)文件操作失敗.");
                 else res.send("文件上傳成功");
             })
         }
     });
 });
 
 
 app.listen(1337,"127.0.0.1", function () {
     console.log("開(kāi)始監(jiān)聽(tīng)");
 });

啟動(dòng)服務(wù)器后,運(yùn)行瀏覽器:

選擇文件:

在瀏覽器端出現(xiàn)了 上傳成功字樣,

在服務(wù)器端也有了我們上傳的文件.

點(diǎn)擊上傳后:

另外bodyParse可以接受客戶端ajax提交的json數(shù)據(jù),以及url的處理.

相關(guān)文章

  • Node.JS在命令行中檢查Chrome瀏覽器是否安裝并打開(kāi)指定網(wǎng)址

    Node.JS在命令行中檢查Chrome瀏覽器是否安裝并打開(kāi)指定網(wǎng)址

    這篇文章主要介紹了Node.JS在命令行中檢查Chrome瀏覽器是否安裝,并打開(kāi)指定網(wǎng)址,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-05-05
  • node.js中cluster的使用教程

    node.js中cluster的使用教程

    這篇文章主要介紹了node.js中cluster的使用教程,分別介紹使用NODE中cluster利用多核CPU、通過(guò)消息傳遞來(lái)監(jiān)控工作進(jìn)程狀態(tài)以及殺死僵尸進(jìn)程等功能,給出了詳細(xì)的示例代碼供大家參考學(xué)習(xí),需要的朋友們下面來(lái)一起看看吧。
    2017-06-06
  • node中的cookie的具體使用

    node中的cookie的具體使用

    這篇文章主要介紹了node中的cookie的具體使用,詳細(xì)的介紹了什么是cookie和cookie的使用,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-09-09
  • 基于socket.io和node.js搭建即時(shí)通信系統(tǒng)

    基于socket.io和node.js搭建即時(shí)通信系統(tǒng)

    socket.IO是一個(gè)websocket庫(kù),包括了客戶端的js和服務(wù)器端的nodejs。官方地址:http://socket.io
    2014-07-07
  • nodejs部署到騰訊云服務(wù)器的實(shí)現(xiàn)(寶塔面板linux系統(tǒng))

    nodejs部署到騰訊云服務(wù)器的實(shí)現(xiàn)(寶塔面板linux系統(tǒng))

    本文主要介紹了nodejs部署到騰訊云服務(wù)器的實(shí)現(xiàn)(寶塔面板linux系統(tǒng)),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-06-06
  • Node.js中常用設(shè)計(jì)模式的使用方法總結(jié)

    Node.js中常用設(shè)計(jì)模式的使用方法總結(jié)

    設(shè)計(jì)模式是由經(jīng)驗(yàn)豐富的程序員在日積月累中抽象出的用以解決通用問(wèn)題的可復(fù)用解決方案,它提供了標(biāo)準(zhǔn)化的代碼設(shè)計(jì)方案提升開(kāi)發(fā)體驗(yàn),本文主要來(lái)和大家討論一下Node.js中設(shè)計(jì)模式的重要性并提供一些代碼示例,感興趣的可以了解下
    2023-10-10
  • 如何設(shè)置process.env.NODE_ENV生產(chǎn)環(huán)境模式

    如何設(shè)置process.env.NODE_ENV生產(chǎn)環(huán)境模式

    process.env.NODE_ENV默認(rèn)只有兩種狀態(tài)即development和production,本文主要介紹了process.env.NODE_ENV設(shè)置生產(chǎn)環(huán)境模式,感興趣的可以了解一下
    2021-09-09
  • sublime text配置node.js調(diào)試(圖文教程)

    sublime text配置node.js調(diào)試(圖文教程)

    下面小編就為大家分享一篇sublime text配置node.js調(diào)試(圖文教程),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2017-11-11
  • node.js基于socket.io快速實(shí)現(xiàn)一個(gè)實(shí)時(shí)通訊應(yīng)用

    node.js基于socket.io快速實(shí)現(xiàn)一個(gè)實(shí)時(shí)通訊應(yīng)用

    這篇文章主要介紹了node.js基于socket.io快速實(shí)現(xiàn)一個(gè)實(shí)時(shí)通訊應(yīng)用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • 深入理解Node內(nèi)建模塊和對(duì)象

    深入理解Node內(nèi)建模塊和對(duì)象

    在node核心中有些內(nèi)建模塊,使用這些模塊可以操作系統(tǒng),文件和網(wǎng)絡(luò),這篇文章主要介紹了深入理解Node內(nèi)建模塊和對(duì)象,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-03-03

最新評(píng)論