簡單的創建一個 node 服務, 引入 http 模塊,創建服務,監聽端口。
const http = require('http')
const querystring = require('querystring')
const PORT = 8000
const server = http.createServer(serverHandle)
server.listen(PORT, ()=>{
console.log('server OK')
})
const serverHandle = async (req, res) => {
// req =》 request res => response
// 在這裏面可以去處理請求和響應
// 設置返回格式
res.setHeader('Content-Type', 'application/json')
// 解析 query
req.query = querystring.parse(url.split('?')[1])
res.end(
JSON.stringify({code: 0})
)
}
處理路由相關,就簡單判斷一下,命中就返回,如果未命中路由,返回404
if(method === 'POST' && req.path === '/api/user/login'){
// 做一些數據處理 做出響應
res.end(
JSON.stringify(userData)
)
return
}
// 未定義路由 返回 404
res.writeHead(404, {'Content-Type': 'text/plain'})
res.write('404 NOT FOUND')
res.end()
使用 nodemon、 cross-env 啓動服務,在修改的時候會自動重啓,類似熱更新,避免手動重啓服務的繁瑣。
安裝 nodemon 和 cross-env
npm install --save cross-env
npm install --save nodemon
在 package.json 中添加 scripts
"dev": "cross-env NODE_ENV=dev nodemon ./bin/www.js",
./bin/www.js 是你服務啓動的入口文件,NODE_ENV=dev 是說明當前是 dev 開發環境。 可以通過 process.env.NODE_ENV 來獲取到當前環境的參數。
再通過 npm run dev 啓動項目,再修改的時候,就會實時更新了。