HTTP协议
超文本传输协议
# 规定了浏览器与服务端之间消息传输的数据格式
四大特性
# 1.基于请求响应 # 2.基于TCP/IP之上的作用于应用层的协议 # 3.无状态(服务端无法保存用户的状态,一个用户访问一千次 也不记录用户信息 ) # 4.无连接(请求来一次我响应一次 之后立马断开连接 两者之间就不再有任何关系了) websocket 相当于是HTTP协议的一个大的补丁 它支持长连接(主要用在聊天室相关功能)
请求数据格式
# 请求首行(标识HTTP协议版本,当前请求方式) # 请求头(一大堆k,v键值对)携带了一些服务端可以提前知道的信息 # /r/n(换行符这个行不显示面试必须要说出/r/n) # 请求体(发送post请求 携带的数据都会放在请求体中是一些敏感信息比如 密码,身份证号...)
响应数据格式
# 响应首行(标识HTTP协议版本,响应状态码) # 响应头(一大堆k,v键值对) # /r/n(换行符这个行不显示面试必须要说出/r/n) # 响应体(返回给浏览器页面的数据 通常响应体都是html页面)
响应状态码
用一串简单的数字来表示一些复杂的状态或者提示信息 # 1XX:服务端已经成功接收了你的数据正在处理 你可以继续提交额外的数据 # 2XX:服务端成功响应 你想要的数据(请求成功200) # 3XX:重定向(当你在访问一个需要登录之后才能访问的页面 你会发现窗口会自动调到登录页面 301 302) # 4XX:请求错误(请求资源不存在404,请求不合法不符合内部规定会权限不够403) # 5XX:服务器内部错误(500)
请求方式
1.get请求
# 朝服务端要资源(比如浏览器窗口输入www.baidu.com) 2.post请求 # 朝服务端提交数据(比如用户登录 提交用户名和密码)
URL
# 统一资源定位符(大白话 就是网址)