
如何快速實(shí)現(xiàn)REST API集成以優(yōu)化業(yè)務(wù)流程
const app = express();
app.use(express.json()); // 解析 JSON 請(qǐng)求體的中間件
app.listen(3000, () => console.log('Server running on port 3000'));
上述代碼完成了以下操作:
require('express')
:導(dǎo)入 Express 模塊。express()
:初始化一個(gè)新的 Express 應(yīng)用程序。app.use(express.json())
:使用中間件解析 JSON 請(qǐng)求體。app.listen(...)
:在端口 3000 上啟動(dòng)服務(wù)器。運(yùn)行該應(yīng)用程序后,服務(wù)器將啟動(dòng),但尚未提供供用戶使用的 API 端點(diǎn)。接下來(lái),將實(shí)現(xiàn)用戶可利用的端點(diǎn)。
創(chuàng)建 API 時(shí),擁有多個(gè)端點(diǎn)以實(shí)現(xiàn)各種任務(wù)是合理的。需使用之前介紹的 CRUD API 的 HTTP 方法(如 GET、POST、PUT、DELETE),每種方法對(duì)應(yīng)不同的 CRUD 操作。以下是每種類型端點(diǎn)的示例,可在 Express 項(xiàng)目中的 app.use()
語(yǔ)句之后添加并執(zhí)行此代碼。
實(shí)現(xiàn)從服務(wù)器獲取數(shù)據(jù)的 GET 端點(diǎn)。以下代碼展示了此類端點(diǎn)的基本結(jié)構(gòu):
app.get('/api/items', (req, res) => {
res.send('List of items');
});
在 app.get(...)
語(yǔ)句中,定義了 GET 路由。當(dāng)向 /api/items
發(fā)出 GET 請(qǐng)求時(shí),將執(zhí)行回調(diào)函數(shù)。上述示例使用 res.send()
返回一個(gè)字符串。在功能更強(qiáng)大的端點(diǎn)中,可能會(huì)訪問數(shù)據(jù)庫(kù)等資源并返回?cái)?shù)據(jù)。
實(shí)現(xiàn) POST 端點(diǎn),該端點(diǎn)包含向服務(wù)器添加新數(shù)據(jù)的邏輯。以下代碼展示了此類端點(diǎn)的結(jié)構(gòu):
app.post('/api/items', (req, res) => {
const newItem = req.body; // 請(qǐng)求體中發(fā)送的數(shù)據(jù)
res.send(Item added: ${newItem.name}
);
});
在上述代碼中,app.post(...)
函數(shù)處理 POST 請(qǐng)求。req.body
包含請(qǐng)求中發(fā)送的數(shù)據(jù),并在響應(yīng)中返回。在功能更強(qiáng)大的端點(diǎn)中,可能會(huì)在此處執(zhí)行將數(shù)據(jù)寫入數(shù)據(jù)庫(kù)的邏輯。創(chuàng)建新記錄后,可發(fā)送一個(gè)布爾值,例如 created: true
,或新創(chuàng)建實(shí)體的 ID。
創(chuàng)建用于更新現(xiàn)有數(shù)據(jù)的 PUT 端點(diǎn)。以下代碼展示了 PUT 端點(diǎn)的基本結(jié)構(gòu):
app.put('/api/items/:id', (req, res) => {
const itemId = req.params.id; // 訪問 URL 參數(shù)
res.send(Item with ID ${itemId} updated
);
});
在上述代碼中,app.put(...)
處理 PUT 請(qǐng)求。要更新的資源的 ID 通常作為查詢參數(shù)或 URI 參數(shù)傳遞。通過 req.params.id
獲取 ID 參數(shù)。在實(shí)際實(shí)現(xiàn)中,通常使用請(qǐng)求正文中的數(shù)據(jù)進(jìn)行數(shù)據(jù)庫(kù)調(diào)用以更新資源,然后返回一個(gè)布爾值,說明更新是否已處理。
展示從服務(wù)器刪除數(shù)據(jù)的 DELETE 端點(diǎn)的示例。以下代碼展示了 DELETE 端點(diǎn)在 Express 中的基本示例:
app.delete('/api/items/:id', (req, res) => {
const itemId = req.params.id;
res.send(Item with ID ${itemId} deleted
);
});
如上所示,app.delete(...)
方法處理 DELETE 請(qǐng)求。與 PUT 一樣,使用 req.params.id
確定要?jiǎng)h除的項(xiàng)目。與其他端點(diǎn)類似,可能會(huì)向數(shù)據(jù)庫(kù)發(fā)出請(qǐng)求,以刪除指定資源。
構(gòu)建 API 后,下一步是在本地系統(tǒng)上啟動(dòng)并運(yùn)行,并使用 Postman 進(jìn)行測(cè)試。以下是部署和測(cè)試端點(diǎn)的各個(gè)步驟,從啟動(dòng) Node.js 服務(wù)器開始。
設(shè)置并運(yùn)行 API
確保 Node.js 服務(wù)器正在運(yùn)行才能訪問 API 端點(diǎn)。通常,通過在終端(指向項(xiàng)目根目錄)中執(zhí)行 node server.js
命令來(lái)啟動(dòng)并運(yùn)行服務(wù)器。
配置 Postman
下載并安裝 Postman(或 Insomnia)以向端點(diǎn)發(fā)出請(qǐng)求進(jìn)行測(cè)試。首先,安裝 Postman。如果尚未安裝,請(qǐng)從官方網(wǎng)站下載。安裝后,創(chuàng)建一個(gè)請(qǐng)求:打開 Postman,點(diǎn)擊“新建”,然后點(diǎn)擊“請(qǐng)求”,并將其保存到新的或現(xiàn)有的集合中。
測(cè)試 API 端點(diǎn)
使用所選的適當(dāng)方法(如 GET、POST、PUT 或 DELETE)向每個(gè)端點(diǎn)發(fā)出請(qǐng)求。以下是每種方法類型的具體信息:
http://localhost:3000/api/items
),然后點(diǎn)擊“發(fā)送”查看回復(fù)。分析響應(yīng)
測(cè)試每個(gè)端點(diǎn)時(shí),檢查 Postman 中每個(gè)請(qǐng)求的響應(yīng)是否正確。成功的操作通常會(huì)返回狀態(tài)代碼,如 200(正常)或 201(已創(chuàng)建)。如出現(xiàn)錯(cuò)誤,使用響應(yīng)詳細(xì)信息和服務(wù)器控制臺(tái)日志進(jìn)行調(diào)試。如果端點(diǎn)正在更改數(shù)據(jù)庫(kù)中的資源,還需檢查是否發(fā)生了正確的操作。
構(gòu)建 API 只是一個(gè)開始。創(chuàng)建 API 端點(diǎn)后,除了使用 API 測(cè)試工具之外,還需要監(jiān)控和分析傳入流量。這有助于識(shí)別潛在問題和安全缺陷,并了解 API 的使用情況,這些都是 API 發(fā)展的關(guān)鍵方面。
隨著 API 平臺(tái)的發(fā)展,可能會(huì)開始專注于創(chuàng)建 API 產(chǎn)品。通過專注于 API 產(chǎn)品,API 從簡(jiǎn)單的構(gòu)建轉(zhuǎn)變?yōu)闃I(yè)務(wù)工具和收入來(lái)源。與更正式的產(chǎn)品類似,API 產(chǎn)品需要管理并可能被貨幣化。通過 API 增加收入是擴(kuò)大業(yè)務(wù)利潤(rùn)的有效途徑。
至此,介紹了構(gòu)建 REST API 的基礎(chǔ)知識(shí)。本篇文章中,使用 Node.js 和 Express 構(gòu)建了一些可擴(kuò)展的簡(jiǎn)單端點(diǎn)。總體而言,提供的代碼為應(yīng)用程序構(gòu)建 API 提供了良好的起點(diǎn)。
構(gòu)建 API 后,可能希望開始分析 API 的使用情況并從中獲利。在這些情況下,合適的工具可以幫助實(shí)現(xiàn) API 分析和貨幣化,支持更好的 API 開發(fā)與管理。
原文鏈接:Rest API Tutorial – A Complete Beginner’s Guide
對(duì)比大模型API的內(nèi)容創(chuàng)意新穎性、情感共鳴力、商業(yè)轉(zhuǎn)化潛力
一鍵對(duì)比試用API 限時(shí)免費(fèi)