响应(报文,标头) 响应结束
res.end()
只支持响应 String 和 Buffer
🐛一次请求最终只有一次结束响应
添加响应标头字段
res.setHeader('key', 'value')
注意语法结构即可
响应状态码
res.statusCode = xxx
成功
2xx
请求失败
4xx
404
资源查找失败,路径错误
400
请求参数错误
服务器错误
5xx
读写文件
- 🎯目录和文件 路径
- 绝对路径
浏览器
也是资源的绝对地址
Node
资源的绝对地址
稳定
-相对路径
浏览器
相当于文件本身,从自身出发查找
Node
不稳定
在不同的目录下启动 Node 程序可能会拼接得到不路径
启动 Node 程序的路径
路径变量
🎯__dirname
目录名绝对路径
__filename
文件名绝对路径
路径拼接
path 模块
🎯path.join()
拼接路径
读写文件
fs 模块
fs.readFile()
fs.writeFile()
http
最基本的服务器
// 导入 http 模块
const http = require('http')
- // 创建一个服务,先有请求再到响应
const app = http.createServer((req, res) => {
res.end('OK')
})
- // 监听某个端口启动
const port = 8001
app.listen(port, () => {
console.log(`在 http://localhost:${port} 启动服务`)
})
客户端发送请求,回调函数触发
请求(报文,标头)
- 请求地址
req.url
都以 / 开头字符串
- 请求方式
req.method
GET
POST
- 请求参数
GET请求
从 req.url 中提取
POST请求
响应(报文,标头)
- 响应结束
res.end()
只支持响应 String 和 Buffer
🐛一次请求最终只有一次结束响应
- 添加响应标头字段
res.setHeader('key', 'value')
注意语法结构即可
- 响应状态码
res.statusCode = xxx
成功
2xx
请求失败
4xx
404
资源查找失败,路径错误
400
请求参数错误
服务器错误
5xx