网络基础(HTTP协议)

1.HTTP协议概述

  • HTTP协议(HyperText Transfer Proyocol)超文本传输协议
  • HTTP是无连接无状态,工作在应用层的协议

无连接理解为:http协议本身是没有维护连接信息的
http的数据会交给网络协议栈传输层的TCP协议,而TCP是面向连接的
无状态:HTTP协议自身不对请求和相应之间的通信状态进行保存
也就是说在HTTP下,协议对应发送过的请求和相应都不做持久化处理

2.HTTP协议的URL解释

在这里插入图片描述

  • 使用http:或者https:等协议方案名获取访问资源时要指定协议类型,不区分字面大小写,最后附一个(:)
  • 登录信息(认证):指定用户名和密码作为从服务器端获取资源时必要的登录信息(身份 认证)。此项为可选项
  • 服务器地址:必须指定待访问的服务器地址。地址可以是类似hackr.jp这种DNS可解析的名称或是192.168.1.1这类IPv4地址名也可以是IPv6地址名
  • 服务器端口号:指定服务器上的网络端口号。此项是可选项,若用户省略则自动使用默认端口号
  • 带层次的文件路径:指定服务器上的文件路径来定位特指的资源
  • 查询字符串:对已指定的文件路径内的资源,可以使用查询字符串传入任意参数。此项可选
  • 片段标识符:使用片段标识符通常可表示出已获取资源中的子资源(文档内的某个位置)。此项可选

3.HTTP协议的数据流

在这里插入图片描述

4.HTTP协议格式

在这里插入图片描述

5.HTTP协议版本

  • HTTP/0.9:HTTP与1990年问世,那时的HTTP并没有作为正式的标准被建立。此HTTP其实含有HTTP1.0之前的意思
  • HTTP/1.0:HTTP正式作为标准被公布是在1996年五月,半杯被命名为HTTP/1.0,并记载于RF1945。虽说是初期标准,但该协议标准至今仍被广泛使用在服务器端
  • HTTP/1.1:1997年1月公布的HTTP/1.1是目前主流的HTTP协议版本。当初的标准是RCF2068,之后发布的修订版RFC2616就是当前的最新版本
  • HTTP/2.0:新一代HTTP/2.0正在定制当中,弹药达到较高的使用覆盖率,仍需假以时日

6.HTTP协议的请求方法

  • GET:获取资源

GET方法用来请求访问服务器资源,指定的资源经服务器端解析后返回相应内容(需要经过服务端运算得出响应)
如果请求的资源是文本,那就保持原样返回(静态资源-例如图片,文本文件,html文件)

  • POST:传输实体主题

虽然GET方法也可以传输实体的主题,但一般不用GET方法进行传输,而是用POST方法
POST的主要目的并不是获取相应的主题内容

7.HTTP协议相应状态码

  • 2XX 成功

200:OK
204:NO Content(没有资源可以返回)

  • 3XX 重定向(地址A跳转到地址B,通过各种方法将各种网络请求重新定个方向转到一个新的位置)

301:永久重定向(Moved Permanently)
302:临时重定向

  • 4XX 客户端错误

400:Bad Request:浏览器请求出错
404:Not Found:请求资源不存在

  • 5XX 服务器出错

500:Internal Server Error :服务器内部错误
503:Service Unavailable:服务不可用,服务端忙碌

8.请求/相应头部字段

  • 请求头部

Host:指定请求的服务端的域名和端口号
Accept:指定客户端能够接收的内容类型
Accept-Language:浏览器可以就收的语言
Accept-Charset:浏览器可以接受的字符编码集
Content-Length:请求的内容长度
Content-Type:请求的与实体对应的MIME信息
Referer:先前网游的地址

  • 响应头部

Content-Length:正文的长度
Content-Type:正文类型
Location:重定向的地址

9.Cookie和Session

  • Cookie:浏览器保存的细腻,一般是客户端的一些不敏感信息,cookie数据来源自服务端,在浏览器保存,当下次在请求服务端的时候,会携带上
  • Session:session数据保存在服务器端,一般描述当前会话信息(例如:浏览器信息,浏览器访问到哪个页面)

一般使用cookie+session的方式

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

星星21211

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值