nodejs 处理用户的请求
nodejs 处理用户的请求
get 请求
get请求的数据拼接在url地址后边, 以? 作为连接, 多个数据之间使用 & 符号连接
获取用户传递的数据通过 query 字段获取
const http = require('http')
const url = require('url')
http.createServer((req, res) => {
// 获取用户传递的数据
let query = url.parse(req.url, true).query
// 可以对数据进行处理
....
}).listen(3000,() => {})
post 请求
post请求的数据是在请求体中, nodejs中没有方法直接获取的; 需要手动获取
- data事件: 当有数据可读时触发
- end事件: 没有更多的数据可读时触发 (当没有数据可读时触发)
- error事件: 在接收和写入过程中发生错误时触发 (读取或写入过程失败时触发)
- finish事件: 所有数据已被写入到底层系统时触发。 (读取完成时触发)
const http = require('http')
const querystring = require('querystring')
http.createServer((req, res) => {
// 声明一个变量 用来接受传递的数据
let body = ''
// 获取用户传递的数据 需要监听数据流
req.on('data', (chunk) => {
// chunk 就是传递的数据
// body 接受到的数据是字符串形式 key=value&key1=value1
body += chunk;
})
// 监听 数据传递结束
req.on('end', () => {
// 对数据进行相关的处理 将body 转换为 对象形式 {key:value, key1:value1}
body = querystring.parse(body)
// 进行数据处理
....
})
....
}).listen(3000,() => {})