一, http协议
1.什么是http协议
Http,超文本传输协议(HyperText Transfer Protocol)是互联网上应用最广泛的一种网络协议
所有的www文件都必须遵守这个标准。设计HTTP最初的目的就是为了提供一种发布和接受HTML页面的方法
2.Http协议的组成
http协议有http请求和http响应。即没有请求就没有响应。
3.http请求(给谁看的? 服务器看的请求)
请求行:请求方式 资源的地址 协议版本
请求方式:POST,GET
请求的资源:/DemoEE/form.html
协议版本:HTTP/1.1
HTTP/1.0,发送请求,创建一次连接,获得一个web资源,连接断开。
HTTP/1.1,发送请求,创建一次连接,获得多个web资源,保持连接。
请求头:格式 key:value
Accept:
Referer:浏览器通知服务器,当前请求来自何处。如果是直接访问,则不会有和头。常用于:防盗链
Accept-Language:
Cookie:与会话有关技术,用于存放浏览器缓存的cookie信息。
User-Agent:浏览器通知服务器,客户端浏览器于操作系统相关信息
Content-Type:
Accept-Encoding:
Host:
Content-Length:
Connection:
Cache-Control:
If-Modified-Since:本地这个文件上一次的修改时间
请求体:当请求方式是post的时,请求体会有请求的参数,格式如下:
username=张三&password=123
如果请求方式为get,那么请求参数不会出现在请求体中,会拼接在url地址后面
http://localhost:8080...?username=zhangsan&password=123
4.http响应:
响应行:协议的版本 状态码 状态的描述信息
常见的状态码:200:一切正常 302:重定向 304:拿本地缓存 404:没有该资源 500:服务器端错误
响应头:key:value
Location:指定响应的路径,需要与状态码302配合使用,完成跳转。
Content-Type:响应正文的类型(MIME类型)
Content-Disposition:通过浏览器以下下载方式解析正文 取值:attachment;filename=xx.zip
Set-Cookie:与会话相关技术,服务器向浏览器写入cookie
Server:
Accept-Ranges:
ETag:
Last-Modified: 访问的资源的最后修改时间
Content-Length:
Date:
响应体:响应体是服务器回写给客户端的页面正文,浏览器将正文加载到内存,然后解析渲染页面内容