找到 264 篇文章 關於 Node.js

理解 Node 中程式碼執行的阻塞和非阻塞

Shyam Hande
更新於 2020年5月13日 12:04:29

466 次檢視

現在,我們在 fs 模組中有一個檔案寫入函式 writeFileSync,如下所示 -const requestBody = []; req.on('data', (chunks)=>{    requestBody.push(chunks); }); return req.on('end', ()=>{    const parsedData = Buffer.concat(requestBody).toString();    const username = parsedData.split('=')[1];    fs.writeFileSync('username.txt', username);    //重定向 res.statusCode=302;    res.setHeader('Location', '/');    return res.end(); });Sync 表示同步。這是一個阻塞程式碼示例。一旦檔案寫入完成,才會開始執行檔案的其餘程式碼。上面的程式碼更簡單,但是如果我們有一個大型檔案處理操作,它會導致應用程式效能下降。這種程式碼執行方式會降低... 閱讀更多

理解 Node 中事件驅動的程式碼執行方法

Shyam Hande
更新於 2020年5月13日 12:02:44

123 次檢視

在 App.js 中之前的示例中,我們看到了如何使用 data 和 end 事件從請求中解析資料。下面的程式碼片段顯示了該 if 塊 -if(url === '/username' && req.method === 'POST'){    const requestBody = [];    req.on('data', (chunks)=>{       requestBody.push(chunks);    });    req.on('end', ()=>{       const parsedData = Buffer.concat(requestBody).toString();       const username = parsedData.split('=')[1];       fs.writeFileSync('username.txt', username);    });    //重定向    res.statusCode=302;    res.setHeader('Location', '/');    return res.end(); }在上面的程式碼塊中,我們註冊了兩個事件(data 和 end),如果路徑匹配“/username”並且... 閱讀更多

解析 Node 中的請求體

Shyam Hande
更新於 2020年5月13日 11:57:25

3K+ 次檢視

在之前的簡單程式碼示例中,我們看到了如何路由請求並建立檔案以輸入測試資料。現在,我們想將使用者輸入的資料儲存到文字檔案中。Node.js 如何處理傳入的請求資料Node.js 以塊的形式讀取資料,這意味著它使用流來讀取資料。一旦 Node 完成讀取請求資料,我們就可以繼續將其用於我們的目的。首先以塊的形式讀取資料 const requestBody = []; req.on(‘data’, (chunks)=>{    requestBody.push(chunks); });我們在傳入的 http 請求上註冊了一個名為“data”的事件。此事件將繼續流式傳輸資料並推送到 requestBody const ... 閱讀更多

在 Node.js 中重定向請求

Shyam Hande
更新於 2020年5月13日 11:50:28

2K+ 次檢視

現在我們有一個如下所示的 App.js 檔案,我們希望在 Node 伺服器接收到使用者名稱後將使用者重定向回“/”。我們將使用者名稱儲存在一個名為 username.txt 的檔案中初始 App.js 檔案 -const http = require('http'); const server = http.createServer((req, res)=>{    const url = req.url;    if(url === '/'){       res.write('');       res.write(' Hello TutorialsPoint ');       res.write('       提交 ');       res.write('');       return res.end();    }    res.write('');    res.write(' Hello TutorialsPoint '); ... 閱讀更多

在 Node.js 中路由請求

Shyam Hande
更新於 2020年5月13日 11:40:43

1K+ 次檢視

路由 http 請求非常重要,因為我們希望根據請求 url 執行不同的業務規則,並且每個路由的響應將不同。之前我們看到,我們可以透過 request.url 在 Node 中獲取 url。下面顯示了帶路由的簡單使用者名稱輸入示例 -const http = require('http'); const server = http.createServer((req, res)=>{    const url = req.url;    if(url === '/'){       res.write('');       res.write(' Hello TutorialsPoint ');       res.write('             提交 ');       res.write('');     ... 閱讀更多

從 Node.js 伺服器向瀏覽器傳送響應

Shyam Hande
更新於 2020年5月13日 11:35:41

865 次檢視

App.js -const http = require('http'); const server = http.createServer((req, res)=>{    console.log(req.url, req.method, req. headers); }); server.listen(3000);如上例所示,我們在 createServer 方法中將請求和響應引數物件作為引數。響應 (res) 物件將用於向客戶端傳送回資料。它有很多屬性,其中一些在下面解釋 -res.setHeader(‘Content-Type’, ‘text/html’); 這行程式碼將響應內容的格式設定為 text/html。如何從 node.js 傳送 html 內容響應物件上的 write() 函式方法可用於傳送多行 html 程式碼,如下所示。res.write(‘’); res.write(‘ Hello TutorialsPoint ’); res.write(‘ Hello Tutorials ... 閱讀更多

理解 Node 中的 http 請求

Shyam Hande
更新於 2020年5月13日 11:31:28

253 次檢視

App.jsconst http = require('http'); const server = http.createServer((req, res)=>{    console.log(req); }); server.listen(3000);使用以下命令執行:node App.js我們可以透過開啟瀏覽器並導航到 localhost:3000 來檢視請求物件內部的內容控制檯視窗上會打印出大量資訊。我們將看到一些重要的屬性。識別請求來源的 url、請求方法型別和請求中的標頭非常重要。標頭將向我們提供有關主機和瀏覽器型別、主機接受的響應等資訊。請求方法可以是任何 http 方法型別,例如 GET、POST、PUT、DELETE 等。const http = require('http'); const ... 閱讀更多

理解 Node.js 中的 Node 生命週期和事件迴圈

Shyam Hande
更新於 2020年5月13日 11:26:49

1K+ 次檢視

Node.js 中的簡單 http 伺服器將註冊一個事件迴圈,該迴圈將持續偵聽 http 請求。包含伺服器建立程式碼的檔案的執行將按如下所示工作 -node App.js => 開始執行指令碼 => 程式碼解析、註冊事件和函式 => 事件迴圈=> 只要註冊了事件,就會一直執行。這是 Node.js 的單執行緒事件驅動方法。用於訪問和更新資料庫中的值也使用事件驅動方法。即使它是單執行緒的,由於其速度,它也可以同時處理多個請求... 閱讀更多

建立 Node.js 伺服器

Shyam Hande
更新於 2020年5月13日 11:17:53

448 次檢視

Node.js 最常用的核心模組是 -http - 用於啟動一個簡單的伺服器,傳送請求https - 用於啟動一個 ssl 安全的 http 伺服器path - 用於根據作業系統處理路徑fs - 它是一個檔案系統處理模組os - 它用於作業系統相關操作讓我們使用 Node.js 建立一個簡單的 http 伺服器 -在像 Visual Studio Code 這樣的編輯器中建立一個 javascript 檔案 App.js(根據您的喜好命名)。App.jsconst http = require(‘http’); function reqListener(req, res){    console.log(‘Hello’); } const server = http.createServer(reqListener); server.listen(3000);解釋我們使用 const 關鍵字而不是 var 或 let 來匯入... 閱讀更多

如何在 Ubuntu 上安裝 Grunt?

Sharon Christine
更新於 2020年1月22日 06:08:04

2K+ 次檢視

Grunt(JavaScript 任務執行器)是一個自動化工具,用於執行重複性任務,例如編譯、單元測試等。Grunt 和 Grunt 外掛透過 NPM(Node.Js 包管理器)連線和管理。本文介紹了 - 如何在 Ubuntu 上安裝 Grunt。要在 ubuntu 上安裝 grunt,它需要預先安裝 Node.js 和 NPM。要驗證 Node.js 的版本,請使用以下命令 - $ node --version示例輸出應如下所示 -v6.9.2要驗證 NPM 的版本,請使用以下命令 - $ npm --version示例輸出應如下所示 -3.10.9如果您想安裝 Node.js 和... 閱讀更多

廣告