目录
1,GET与POST的区别
get没有请求体,请求的数据直接追加到url后面;post有请求体,请求的数据和url分开。
get请求的数据会暴露在地址栏中,而post请求则不会。
在使用get请求时,传输数据会受到URL长度的限制。
post的安全性比get的高。
2,JSON解析
2.1,JSON.stringify
stringify:把对象转换成字符串。
var jsonStr =JSON.stringify(objArr);
2.2,JSON.parse
parse:把字符串转化成对象。
var objArr2 =JSON.parse(data.toString());
3,cookie
3.1,set方法
set方法:用来设置响应内容。
set-cookie设置响应头,设置了cookie之后可以让浏览器帮助服务端存储一定的数据。
当浏览器收到cookie之后下一次启动服务器的时候会自动把cookie附带到本次的请求头中。
cookie的内容只能是字符串,如果想存储多个键值对的话,会比较麻烦,而且要按照cookie的标准格式去进行存储。
导入cookie包
var cookie =require('cookie');
res.set('Set-cookie','name=xia,age=30');
3.2,cookie方法用于设置响应头,
cookie方法:用于设置响应头,
1参:cookie的名字,名字重复代表更新cookie,
2参:cookie的值,
3参:cookie需要配置的对象,可以配置有效期,或者路径。
res.cookie('name','King',{
// 有效期 毫秒
maxAge:86400
4,http模块
http模块的作用:创建http服务。
- createServer:创建基于http协议的服务器,
request:请求(req):里面包含有此次请求的内容,
response:响应(res):里面包含有此次响应的内容
var app =http.createServer(function(req,res){}
- res.end:向响应体内插入数据,把数据返回给客户端,并结束此次请求。默认返回是html格式 可以直接返回现成的网页,也可以嵌入标签。
res.end("<h1>欢迎来到我的csdn,谢谢阅读!!!</h1>");
- listen:服务器起动
端口号;8080,3000
//成功之后的回调
app.listen(8080,function(err){
console.log("run is now");
});
4.1,请求报文和响应报文
http要求只有客户端主动请求服务器,服务器才能做出响应。
一次完整的http请求:
1,客户端按照请求报文格式把请求数据发给服务器,
2,然后服务器按照响应报文格式返回给客户端数据。
在这个过程中,客户端执行的数据叫请求报文,服务端返回的数据叫响应报文。
请求报文
- 请求行:单独的一行,其中规定了请求方法,资源路径,协议名称/协议版本,
- 请求头:多行数据,其中可以记录请求的路径,请求的cookie,浏览器信息,请求体长度,
- 空行:单独的一行,没有任何数据,作用是用来分隔请求头和请求体,
- 请求体:多行数据,内容是本次请求的数据。
响应报文
- 响应行:单行的数据,本次请求的状态码,请求结果:
A,1开头表示正在拨,
B,2开头表示连接成功,
C,4表示客户端出现错误404,url拼错,
D,5表示服务端错误,502表示服务器瘫痪了, - 响应头:多行数据 包含服务器信息,本次请求体的长度,本次请求体的数据类型,cookie等
- 空行:和请求报文空行一样。
- 响应数据:本次请求返回的数据一般都是json或者是xml格式。