HTTP报文格式长什么样?
HTTP报文它是由请求行,请求头,请求体组成的
请求行他是请求或响应的基本信息
请求头他是使用key-value格式可以更加详细的说明报文
请求体是传输的具体内容
是如何分割的?
请求行与请求头他是用\r\n来分割的,请求头和请求体是用空格来分割的。也就是两个\r\n。
HTTP里面有什么方法?
GET,PUT,POST,HEAD,DELETE,
GET和POST的区别?
1.GET是向服务端请求数据,POST是向服务端添加数据
2.GET是只读数据,所以他是安全且幂等的,而POST是更改服务器上的资源,多次执行POST,会多次建立资源,所以他不是安全且幂等的
3.GET请求的请求参数存放在URL中,但是浏览器对URL的长度有限制,所以导致了URL对GET请求的请求参数也有限制,但是POST的请求参数存放在请求体中,所以是没有限制的。
GET一定是安全且幂等的吗?
不一定,要看实际的GET请求,如果开发者是遵守规范,而且GET请求是用获取数据,就是安全且幂等的,如果GET请求是新增数据的话就不是安全且幂等的,举个例子就是如果你要实现的GET方法里是一个数据库记录的话,就要进行多次GET方法,也就是插入多个记录。