1.创建Web服务器
// 引入系统模块http
const http = require('http');
// 创建服务器
const server = http.createServer();
// 当服务器接收到客户端的请求时触发
server.on('request', (req, res) => {
// 做出响应
res.end('welcome to web');
}
//监听端口 node中常用3000端口进行测试
server.listen(3000);
2.Http协议
2.1.报文
2.1.1.请求报文
server.on(‘request’,(req,res) =>{});中的req参数就包含了请求报文的信息
req.hearders // 获取请求报文
req.method // 获取请求方法 (GET/POST)
req.url // 获取请求地址
/***************相关使用代码***********/
// 获取请求报文信息
// req.headers
console.log(req.headers);
// 获取请求方式 req.method
// console.log(req.method);
if (req.method == 'POST') {
res.end('POST')
} else if (req.method == 'GET') {
res.end('GET');
}
// 获取请求地址 req.url
// console.log(req.url);
if (pathname == '/index' || pathname == '/') {
res.end('欢迎来到首页');
} else if (pathname == '/haha') {
res.end('This is haha page')
} else {
res.end('Not found')
}
2.1.2.响应报文
通过res.writeHead(num,obj)设置响应报文,其中第一个参数是HTTP状态码,第二个参数是内容的类型(对象)
1.HTTP状态码(num)
- 200 请求成功
- 404 请求的资源没有被找到
- 500 服务器端错误
- 400 客户端请求有语法错误
2.内容类型(obj)
- text/html
- text/css
- application/javascript
- image/jpeg
- application/json
/***************代码示例*************/
// 响应报文
res.writeHead(200, {
'content-type': 'text/html;charset=utf-8' //设置charset=utf-8 下来中文能够正常显示反之则乱码
});
res.end('欢迎来到WEB');
来源:CSDN
作者:就是有点怕怕
链接:https://blog.csdn.net/weixin_42371354/article/details/104283859