• HTTP协议二


    第一节:HTTP协议用于客户端和服务端之间的通信

    客户端:请求访问文本或图像等资源的一端。

    服务器端:提供资源响应的一端。

    第二节:通过请求和响应的交换达成通信

    示例:

    请求报文中各个组成部分表示什么含义呢?请看下图:

    起始行开头的 POST 表示请求访问服务器的类型,称为方法。

    随后的字符串  /form/entry 表示请求访问的资源对象,也叫作 URL。

    最后的HTTP/1.1 表示HTTP的版本号,用来提示客户端使用的HTTP协议功能。

    请求报文的组成部分:请求方法 + 请求URL + 协议版本 + 可选的请求首部字段 + 内容实体。

    接受到请求的服务器会将请求的内容的处理结果以响应的形式返回。如下图所示:

    起始行开头的 HTTP/1.1 表示服务器对于的HTTP版本。200 OK 表示请求的处理结果的状态码(status code)和原因短语(reason-phrase)。

    第二行显示了创建响应的日期时间,是首部字段(header field)内的一个属性。

    接着以一空行分割,之后内容便是字资源实体的主体(entity body)

    第三节:HTTP不是保存状态的协议

    HTTP是一种不保存状态的,无状态(stateless)协议。HTTP协议自身不会对请求与响应之间的通信状态进行保存。也就是说在 HTTP 这个级别,协议对于发送过的请求或响应都不做持久化处理。

    HTPP协议虽然是无状态协议,但是为了实现期望的保持状态功能,例如保持登录状态,于是便引进了Cookie技术,有了Cookie再用 HTTP 协议,就可以管理状态了。

    第四节:请求URL定位资源

    HTTP 协议使用URL定位互联网上的资源,正式由于URL的特定功能,在互联网上的任意位置的资源都可以访问到。

    当客户端请求访问资源而发送请求时,URI 需要将作为请求报文中的请求 URI 包含在内。指定请求 URI 的方式有很多。

    第五节:告知服务器意图的HTTP方法:

    第六节:使用Cookie的状态管理

    Cookie 技术通过在请求和响应报文中写入 Cookie 信息来控制客户端的状态。

    Cookie 会根据从服务器端发送的响应报文内的一个叫做 Set-Cookie 的首部字段信息,通知客户端保存 Cookie。当下次客户端再往该服务器发送请求时,客户端会自动在请求报文中加入 Cookie 值后发送出去。

    服务器端发现客户端发送过来的 Cookie 后,会去检查究竟是从哪一个客户端发来的连接请求,然后对比服务器上的记录,最后得到之前的状态信息。

    上图展示了发生 Cookie 交互的情景,HTTP 请求报文和响应报文的内容如下:

  • 相关阅读:
    image
    MySQLdb
    【基础】Equal方法、面向对象-多态-继承-封装
    【转】SSL协议、SET协议、HTTPS简介
    【转】UML图与软件开发过程那点关系
    【转载】日本社会为啥没有“王思聪”
    调用0A中断输入字符串数据段的DUP定义
    字符串输入逆序输出(回车换行符)
    输入单个字符并输出
    仿射密码加密解密文件流
  • 原文地址:https://www.cnblogs.com/luoshengjie/p/10368751.html
Copyright © 2020-2023  润新知