node 处理http
- 安装nodemon
它是个自动重启工具,当项目内的文件发生变化的时候它回自动重启服务,而不再需要我们再去手动启动服务。
npm install nodemon --save-dev
使用:
使用 nodemon app.js
代替 node app.js
其中app.js
就是项目的入口文件
2. 使用node 处理 http (GET、POST)
const http = require('http')
const querystring = require('querystring')
const server = http.createServer((req,res) => {
const method = req.method
const url = req.url
const path = url.split('?')[0]
const query = querystring.parse(url.split('?')[1])
// 设置返回的格式
res.setHeader('Content-Type', 'application/json')
// 返回的数据
const resData = {
method,
url,
path,
query
}
// 返回
if(method === 'GET') {
res.end(JSON.stringify(resData))
return
}
if(method === 'POST') {
// 定义post 方法接受到的数据
let postData = ''
req.on('data', chunk => {
postData += chunk.toString()
})
req.on('end', () => {
resData.postData = postData
// 返回
res.end(JSON.stringify(resData))
})
}
})
server.listen(8000)
console.log('port: 8000')
关于 req.on
当接受到了一个 POST 或者 PUT 请求时,请求体对于你的应用程序非常重要。相对于访问请求 头而言,获取请求体有些麻烦。传入请求对象的 request 其实实现了 ReadableStream 接口, 这个信息流可以被监听,或者与其它流进行对接。我们可以通过监听 ‘data’ 和 ‘end’ 事件从而把 数据给取出来。
每次在 ‘data’ 事件中触发抓获的数据块是一个 Buffer。如果你已知是一个字符串对象,那么 最好的方案就是把这些数据收集到一个数组中,然后在 ‘end’ 事件中拼接并且把它转化为字符串。
来源:CSDN
作者:郭治涛-Theo
链接:https://blog.csdn.net/qq_44698161/article/details/104132169