HTTP and HTTPS

来源:互联网 发布:腾飞投资理财源码 编辑:程序博客网 时间:2024/06/13 02:06

HTTP和HTTPS

  • HTTP协议(HyperText Transfer Protocol,超文本传输协议):是一种发布和接收 HTML页面的方法。

  • HTTPS(Hypertext Transfer Protocol over Secure Socket Layer)简单讲是HTTP的安全版,在HTTP下加入SSL层

  • SSL(Secure Sockets Layer 安全套接层)主要用于Web的安全传输协议,在传输层对网络连接进行加密,保障在Internet上数据传输的安全。

  • HTTP的端口号为80,

  • HTTPS的端口号为443

URL(Uniform / Universal Resource Locator的缩写):统一资源定位符,是用于完整地描述Internet上网页和其他资源的地址的一种标识方法。

基本格式:scheme://host[:port#]/path/…/[?query-string][#anchor]

  • scheme:协议(例如:http, https, ftp)
  • host:服务器的IP地址或者域名
  • port#:服务器的端口(如果是走协议默认端口,缺省端口80)
  • path:访问资源的路径
  • query-string:参数,发送给http服务器的数据
  • anchor:锚(跳转到网页的指定锚点位置)

e.g.
- ftp://192.168.0.116:8080/index
- https://www.baidu.com

客户端HTTP请求

URL只是标识资源的位置,而HTTP是用来提交和获取资源。客户端发送一个HTTP请求到服务器的请求消息,包括以下格式:

  1. 请求行
  2. 请求头部
  3. 空行

请求方法

GET https://www.baidu.com/ HTTP/1.1

根据HTTP标准,HTTP请求可以使用多种请求方法。

HTTP 0.9:只有基本的文本 GET 功能。

HTTP 1.0:完善的请求/响应模型,并将协议补充完整,定义了三种请求方法: GET, POST 和 HEAD方法。

HTTP 1.1:在 1.0 基础上进行更新,新增了五种请求方法:OPTIONS, PUT, DELETE, TRACE 和 CONNECT 方法。

HTTP 2.0(未普及):请求/响应首部的定义基本没有改变,只是所有首部键必须全部小写,而且请求行要独立为 :method、:scheme、:host、:path这些键值对。


  1. GET 请求指定的页面信息,并返回实体主体。
    1. HEAD 类似于get请求,只不过返回的响应中没有具体的内容,用于获取报头
    2. POST 向指定资源提交数据进行处理请求(例如提交表单或者上传文件),数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。
    3. PUT 从客户端向服务器传送的数据取代指定的文档的内容。
    4. DELETE 请求服务器删除指定的页面。
    5. CONNECT HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。
    6. OPTIONS 允许客户端查看服务器的性能。
    7. TRACE 回显服务器收到的请求,主要用于测试或诊断。