网络基础
TCP/IP协议
七层网络协议
DNS服务器
IP地址很重要,可以访问一个虚假的IP地址,也可已改变现有域名指向的IP地址,比如将百度改为一个Hello World的界面
服务器
首先引入http模块
var http=require('http');
创建服务器
var server=http.createServer();
监听request请求事件
server.on('request',function(req,res){
//req:请求对象,包含了所有客户端请求的数据,请求头和请求主体
//res:响应对象,包含所有服务器端发送给客户端的数据,响应头和响应主题
res.write('<h1>Woc</h1>');
});
监听端口
server.listen(80,function(){
console.log('服务器正在运行');
});
上述是监听80端口
在cmd中输入
netstat -a
可以查看当前电脑中的所有活动接口
netstat -ab
可以查看是谁占用了哪些端口
(需要管理员权限)
req.url
可以根据不同的请求来获取不同的html数据与页面
HTTP响应状态码
http协议规定的服务器响应数据时的状态编码
响应状态码 | 状态 |
---|---|
1xx | 普通消息,无特殊含义 |
2xx | 表示服务器响应成功 |
200 | OK |
3xx | 表示重定向 |
301 | 永久重定向 |
302 | 临时重定向 |
304 | 使用缓存 |
4xx | 无法访问 |
403 | 服务器理解请求,但是拒绝执行 |
404 | 资源找不到 |
5,6字头 | 服务器执行有错 |
500 | 服务器端代码有错 |
502 | 网关错误 |
503 | 服务器已崩溃 |
状态码的使用
res.writeHead(200,{"Content-Type":"text/html;charset=utf-8");
res.writeHead(状态码,响应头对象);
响应头
Content-Type
响应的文件类型
text-html
默认编码:系统编码,GBK编码
然而Node.js里面写的中文都是utf-8编码,因此未声明编码的话就会产生乱码
Content-Length
响应内容的长度
如果响应内容长度和指定响应内容长度相同的话,就没有问题,加入内容长度为52字节,设定Length为53的话,将会不停的等待(浏览器上面会有转圈圈的标志)
MIME类型
MIME类型可以认为是文件类型的表述
常见的MIME类型
column1 | column2 |
---|---|
.html | text/html |
.css | text/css |
.jpg | text/javascript |
.png | image/jpeg |
.gif | image/gif |
.json | text/json application/json |
.xml | text/xml |
.mp3 | ------- |
.mp4 | video/mpeg |
.pdf application/pdf | |
.zip | application/x-zip |
后端可以生成任意规格的文件
Q.E.D.
Comments | 0 条评论