在Node.js中,你可以使用以下步驟來實現搜索功能:
創建一個HTTP服務器,監聽特定的請求。
當接收到搜索請求時,解析請求參數,獲取要搜索的關鍵字。
使用關鍵字查詢數據庫或其他數據源,獲取相關的結果。
將結果以JSON格式返回給客戶端。
以下是一個簡單的示例代碼:
const http = require('http');
const url = require('url');
const querystring = require('querystring');
// 模擬的數據源,實際項目中可能是數據庫等
const data = [
{ name: 'Apple', type: 'fruit' },
{ name: 'Banana', type: 'fruit' },
{ name: 'Carrot', type: 'vegetable' },
{ name: 'Tomato', type: 'vegetable' }
];
const server = http.createServer((req, res) => {
// 解析請求URL和參數
const { pathname, query } = url.parse(req.url);
const { keyword } = querystring.parse(query);
// 檢查請求路徑
if (pathname === '/search') {
// 查詢匹配的結果
const results = data.filter(item => item.name.toLowerCase().includes(keyword.toLowerCase()));
// 返回結果給客戶端
res.setHeader('Content-Type', 'application/json');
res.end(JSON.stringify(results));
} else {
res.statusCode = 404;
res.end('Not Found');
}
});
server.listen(3000, () => {
console.log('Server is running on http://localhost:3000');
});
在上述示例中,我們創建了一個簡單的HTTP服務器,監聽3000端口。當收到/search?keyword=xxx
的GET請求時,會解析參數中的keyword
,然后使用它來過濾data
數組,最后將過濾結果以JSON格式返回給客戶端。請注意,這只是一個示例,實際項目中你可能需要使用數據庫或其他數據源來進行搜索。