http请求
1.浏览器根据域名解析IP地址 (DNS查找)
2.浏览器与WEB服务器建立一个TCP链接 (TCP3次握手)
3.浏览器给WEB服务器发送一个http请求 (包括不限 请求行 (request line)请求头(headers)空行(blank line)和请求数据 (request body))
请求行分为三个部分: 请求方法,请求地址和http协议版本 如 GET /index.html HTTP/1.1。
请求方法:get (完整请求一个资源 ), post(提交表单), put(上传文件), delete(删除), patch , head(仅请求响应首部),options(返回请求的资源所支持的请求方法),trace(追求一个资源请求中间所经过的代理)最常用的get和post
请求地址:协议://主机:端口/路径 (端口和路径有时可省略 http默认端口80
)
协议版本 :http/主版本号.次版本号 (http/1.0)
请求头
请求数据
请求数据不在get方法中使用,而在post方法中使用,post方法适用于需要客户填写表单的场合 ,与请求数据相关最长使用的请求头部是Cntent-Type和Content-Length
4.服务端响应http请求,浏览器得到html代码
http响应报文由状态行(satus line),相应头部(headers),空行数据(blank line)和响应数据(response body)4个部分组成
状态行分为 协议版本 ,状态码,状态码扫描
响应头部
响应数据
5.浏览器解析html代码,请求html代码中资源
浏览器拿到html文件后,开始解析html代码,遇到静态资源时,就向服务器端去请求下载
6.关闭TCP链接,浏览器对页面进行渲染呈现给客户
浏览器利用自己内部的工作体制,把请求到的静态资源和html代码进行渲染,呈现给客户