HTTP简要学习

1、首先HTTP请求包含头部和主体

头部大小在32k以内主要是一些头部信息主体类型等。主体大小2G以内包含文件图片等

2、状态码

1xx   表示信息类(少且无用)

2xx   表示请求成功

3xx   表示重定向(请求没问题重新定向到已有的内容)

4xx   表示请求错误(常见404)

5xx   表示服务器错误(请求没问题,服务器出现问题没法返回应该返回的内容

3、请求方式

GET和POST

GET:

向服务器获取数据,数据放在url里传输

容量小于32k

POST:

向服务器发送数据

容量大

4、接收数据

接收GET数据

!querystring模块:

先将url地址依据?符号切成两部分,第一部分为地址,第二部分用querystring.parse方法转换为json格式的请求内容

!!url模块

使用url.parse方法第一个参数为req.url第二个参数可选true(相当于querystring的作用),之后pathname为url地址,query为请求内容的json格式

接收POST数据

(post处理字符串数据)

分次接收

let arr=[];

req.on('data',(data)=>{

    arr.push(data)

});

req.on('end',()=>{

    let buffer = Buffer.concat(arr);

    此时buffer就表示接受的所有数据,可以通过querystring.parse转换为json对象

})

(post处理文件数据)

处理二进制文件的包:multiparty

你可能感兴趣的:(HTTP简要学习)