在 Node.js 中建立自訂後端涉及多個步驟,從設定 Node.js 環境到建置和部署 API。以下是使用 Node.js 建立自訂後端的詳細逐步指南:
第 1 步:設定您的開發環境
開始編碼之前,您需要在電腦上安裝以下軟體:
- Node.js:在伺服器端執行 JavaScript 的執行階段。您可以從nodejs.org下載它。
- NPM(節點套件管理器):它與 Node.js 捆綁在一起。您將使用它來安裝和管理庫。
要檢查 Node.js 和 NPM 是否已安裝,請執行:
node -v npm -v
如果安裝了它們,您將看到它們的版本號。如果沒有,請安裝 Node.js。
步驟2:建立一個新項目
- 建立專案資料夾:
mkdir my-custom-backend cd my-custom-backend
- 初始化package.json檔案:
npm init -y
此命令建立一個基本的 package.json 文件,它將管理您的依賴項。
第 3 步:安裝所需的軟體包
您需要安裝一些軟體包來建立後端。
- Express:一個最小且靈活的 Node.js Web 應用程式框架,為建立 Web 和行動應用程式提供了一組強大的功能。
- Nodemon:一種幫助開發 Node.js 應用程式的工具,當偵測到目錄中的檔案變更時自動重新啟動伺服器。
- Body-parser:處理 JSON 和 URL 編碼表單資料的中間件。
- dotenv:管理環境變數。
透過運行安裝這些依賴項:
npm install express body-parser dotenv npm install --save-dev nodemon
- express:處理 HTTP 請求的核心框架。
- body-parser:用於在處理程序之前解析中間件中傳入請求的中間件,可透過 req.body 存取。
- dotenv:將環境變數從 .env 檔案載入到 process.env。
- nodemon:程式碼變更時會自動重新啟動伺服器(用於開發目的)。
第 4 步:建立伺服器文件
在專案根目錄中,建立一個名為 server.js 的檔案。該檔案將處理 Express 伺服器的設定。
touch server.js
在server.js中,加入以下程式碼:
// Import necessary modules const express = require('express'); const bodyParser = require('body-parser'); const dotenv = require('dotenv'); // Load environment variables dotenv.config(); // Initialize the app const app = express(); // Middleware to parse JSON data app.use(bodyParser.json()); // Define a basic route app.get('/', (req, res) => { res.send('Welcome to my custom Node.js backend!'); }); // Start the server const PORT = process.env.PORT || 3000; app.listen(PORT, () => { console.log(`Server running on http://localhost:${PORT}`); });
此檔案設定一個 Express 伺服器,用於偵聽請求並以簡單的訊息回應。
第 5 步:運行伺服器
要運行您的伺服器,您可以使用節點命令:
node -v npm -v
但是,對於開發來說,最好使用nodemon在更改時自動重新啟動伺服器:
mkdir my-custom-backend cd my-custom-backend
現在,在瀏覽器中造訪 http://localhost:3000。您應該看到:
npm init -y
第 6 步:定義路由和處理程序
接下來,您需要為後端添加一些自訂路由。例如,您可以建立一個處理使用者資訊的 API:
npm install express body-parser dotenv npm install --save-dev nodemon
- GET /users:取得所有使用者。
- GET /users/:id:透過 ID 取得使用者。
- POST /users:新增使用者。
- DELETE /users/:id:透過 ID 刪除使用者。
步驟7:使用環境變數
您可以使用 dotenv 套件來配置環境變數。在根目錄建立.env檔:
touch server.js
在 .env 中,您可以定義以下變數:
// Import necessary modules const express = require('express'); const bodyParser = require('body-parser'); const dotenv = require('dotenv'); // Load environment variables dotenv.config(); // Initialize the app const app = express(); // Middleware to parse JSON data app.use(bodyParser.json()); // Define a basic route app.get('/', (req, res) => { res.send('Welcome to my custom Node.js backend!'); }); // Start the server const PORT = process.env.PORT || 3000; app.listen(PORT, () => { console.log(`Server running on http://localhost:${PORT}`); });
此變數將在您的 server.js 中用於動態設定連接埠:
node server.js
第 8 步:新增錯誤處理和中介軟體
Express 中的中間件是一個可以存取請求物件 (req)、回應物件 (res) 以及應用程式請求-回應週期中的下一個中介軟體函數的函數。
您可以建立自訂中間件來處理錯誤:
npx nodemon server.js
這會捕獲應用程式中任何未處理的錯誤,並以 500 狀態程式碼回應。
第 9 步:建立您的專案(可選)
隨著應用程式的成長,正確組織它是一個好主意:
Welcome to my custom Node.js backend!
- controllers/:處理 API 路由的邏輯。
- routes/:定義端點並將它們連接到控制器。
- models/:處理資料結構,未來可能使用資料庫。
第 10 步:連接到資料庫(可選)
如果你想持久化數據,你可以將你的後端連接到資料庫。例如:
- MongoDB:使用 mongoose 與 MongoDB 資料庫互動。
- MySQL/PostgreSQL:使用sequelize或pg與SQL資料庫互動。
對於 MongoDB,安裝 mongoose:
// Example user data let users = [ { id: 1, name: 'John Doe' }, { id: 2, name: 'Jane Doe' } ]; // Route to get all users app.get('/users', (req, res) => { res.json(users); }); // Route to get a user by ID app.get('/users/:id', (req, res) => { const userId = parseInt(req.params.id); const user = users.find((u) => u.id === userId); if (user) { res.json(user); } else { res.status(404).send('User not found'); } }); // Route to create a new user app.post('/users', (req, res) => { const newUser = { id: users.length + 1, name: req.body.name }; users.push(newUser); res.status(201).json(newUser); }); // Route to delete a user by ID app.delete('/users/:id', (req, res) => { const userId = parseInt(req.params.id); users = users.filter((u) => u.id !== userId); res.status(204).send(); });
在 server.js 中:
touch .env
第 11 步:使用 Postman 或 Curl 測試您的 API
要測試您的API,您可以使用Postman或curl:
PORT=3000
或者,您可以安裝Postman,它提供了一個用於發出請求和查看回應的GUI。
第 12 步:部署您的後端
後端準備就緒後,您可以使用雲端平台進行部署,例如:
- Heroku:用於快速部署。
- AWS EC2:對伺服器進行更多控制。
- DigitalOcean:用於簡單的雲端託管。
對於部署,請確保您的 PORT 是動態的,並且 API 金鑰等敏感資訊儲存在環境變數中。
結論
透過執行這些步驟,您現在已經有了一個使用 Node.js 建構的基本自訂後端。您可以透過新增身份驗證、連接到資料庫以及處理高級功能(例如與 WebSocket 進行即時通訊)來繼續擴展此功能。
以上是使用 Node.js 建立自訂後端:逐步指南的詳細內容。更多資訊請關注PHP中文網其他相關文章!

JavaScript字符串替換方法詳解及常見問題解答 本文將探討兩種在JavaScript中替換字符串字符的方法:在JavaScript代碼內部替換和在網頁HTML內部替換。 在JavaScript代碼內部替換字符串 最直接的方法是使用replace()方法: str = str.replace("find","replace"); 該方法僅替換第一個匹配項。要替換所有匹配項,需使用正則表達式並添加全局標誌g: str = str.replace(/fi

因此,在這裡,您準備好了解所有稱為Ajax的東西。但是,到底是什麼? AJAX一詞是指用於創建動態,交互式Web內容的一系列寬鬆的技術。 Ajax一詞,最初由Jesse J創造

本文討論了在瀏覽器中優化JavaScript性能的策略,重點是減少執行時間並最大程度地減少對頁面負載速度的影響。

將矩陣電影特效帶入你的網頁!這是一個基於著名電影《黑客帝國》的酷炫jQuery插件。該插件模擬了電影中經典的綠色字符特效,只需選擇一張圖片,插件就會將其轉換為充滿數字字符的矩陣風格畫面。快來試試吧,非常有趣! 工作原理 插件將圖片加載到畫布上,讀取像素和顏色值: data = ctx.getImageData(x, y, settings.grainSize, settings.grainSize).data 插件巧妙地讀取圖片的矩形區域,並利用jQuery計算每個區域的平均顏色。然後,使用

本文討論了使用瀏覽器開發人員工具的有效JavaScript調試,專注於設置斷點,使用控制台和分析性能。

本文將引導您使用jQuery庫創建一個簡單的圖片輪播。我們將使用bxSlider庫,它基於jQuery構建,並提供許多配置選項來設置輪播。 如今,圖片輪播已成為網站必備功能——一圖胜千言! 決定使用圖片輪播後,下一個問題是如何創建它。首先,您需要收集高質量、高分辨率的圖片。 接下來,您需要使用HTML和一些JavaScript代碼來創建圖片輪播。網絡上有很多庫可以幫助您以不同的方式創建輪播。我們將使用開源的bxSlider庫。 bxSlider庫支持響應式設計,因此使用此庫構建的輪播可以適應任何

數據集對於構建API模型和各種業務流程至關重要。這就是為什麼導入和導出CSV是經常需要的功能。在本教程中,您將學習如何在Angular中下載和導入CSV文件


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

ZendStudio 13.5.1 Mac
強大的PHP整合開發環境