http请求整理
终于又回来了,先来简单整理一波http请求的信息。对于前端来说,不管是在面试还是在实际项目中,都有必要去了解一些关于http的信息。
http请求包含三部分:请求行request line、请求头request head、请求体request body。
对应的http响应也包含三部分:响应行,响应头,响应体;
请求行里包括请求的方法(get/post等),请求的地址,和http协议的版本;
响应行包括:请求的方法,响应的状态,响应的消息。如下图所示:
当请求的方法为get时,get顾名思义,获取的意思,主要示向服务器获取内容,在向服务器索取内容的时候,如果有需要提交给服务器的数据,是附加在url上的,以querystring的方式发送给服务器而不是放在request body里面。当请求的方法为post的时候,post主要就是向服务器发送数据的,会把数据放在request body里面。
下面逐一介绍请求头和响应头:
if-modify-since(浏览器端对文件最后的修改时间)和last-modify(服务器端最后的修改时间),
if-none-match和etag(资源的状态唯一标示符),
cache-control(缓存和响应所遵循的机制),
expires(文件在本地缓存的过期时间)。
accept在请求头,表示可以接受的媒体类型, 形式例如: (大类)/(子类);
accept-encode:在请求头,表示可以接受的编码方式,通常是指的压缩方式,什么压缩方法等;
content-encode:在响应头,表示服务器使用了什么样的压缩方式;
accept-language:请求头,表示接受何种语言;
content-language:响应头,表示返回的内容是何种语言的;
content-type:一般在post请求的请求头中,或者响应头中,表示的是请求体或者响应体的类型。
http协议小白知识有限,暂时先整理这一波,后续,再来详细整理一下http关于缓存方面的知识。