WEB安全学习之HTTP协议

​​​

1.1.1http协议请求

  • 基础术语:

  • 客户端:主动发起网络请求的一端    
  • 服务器:被动接受网络请求的一端
  • 请求:客户端给服务器发送的数据
  • 响应:服务器给客户端返回的数据
  • 完整的HTTP请求

  • 认识URL

  • 协议类型
  • 常见的HTTP和HTTPS  访问myspl时的协议类型为jdbc:mysql
  • 访问资源所需要的凭证信息
  • 一般时登录所需要的用户名和密码。
  • 但是现在网站认证一般不需要URL进行 一般省略
  • 服务器地址
  • 可以是一个IP地址也可以是域名(域名会被DNS翻译成IP地址)
  • 端口号
  • 用来区分主机上的不同程序(HTTP协议默认使用80,https协议默认使用443端口)
  • 资源UNIX文件路径
  • 服务器上某个资源的路径
  • 文件名
  • 表示访问服务器上的什么资源【不能省略】
  • 查询字符串
  • 本质上是一个键值对结构,键值对之间用&分割,键和值之间使用=分割。表示客户端给服务器传递的参数。一般位于?后边
  • 片段标志符
  • 主要用于界面的跳转
  • URL(Uniform Resource Locator)统一资源定位符。指出文件的位置以及浏览器应该怎么处理它。
  • 完整格式:协议类型://[访问资源需要的凭证信息]服务器地址[:端口号]][资源层级UNIX文件路径]文件名[?查询字符串][#文件标识符]      www.baidu.com            
  • 1.1.2HTTP响应

  • 状态码(4**客户端错误 5**服务器错误)

    • 200 OK:访问成功
    • 404 Not Found:在发送的请求的URL中没有找到资源
    • 403 Forbidden:拒绝访问
    • 405 Method Not Allowed:不支持请求中的方法或者不能使用
    • 500 Internal Server Error:服务器错误
    • 504 Gateway (网关)Timeout:服务器负载过大
  • 响应header

    • Content-Type:body数据格式
      • Text/html
      • Text/css
      • Application/javascript
      • Application/json
  • 1.1.3 Post / get区别

  • GET方法:常用于获取服务器上的某个资源
  • POST方法:多用于提交用户输入的数据给服务器
  • 区别

  •  GET习惯上会把客户端的数据通过query string传输,POST通常数据通过body传输
  • Query string传输是一种通过URL(Uniform Resource Locator)向服务器传递数据的方法。它是一种标准的、通用的方式,用于将数据附加到URL中,以便在客户端和服务器之间进行通信。在URL中,查询字符串通常位于问号(?)后面,用于传递参数和参数值。例如,以下是一个包含查询字符串的URL示例:https://example.com/page?param1=value1¶m2=value2
  • GET习惯上用于从服务器获取数据,POST常用于客户端给服务器提交数据
  • GET请求处理是幂等的,POST请求不要求实现幂等
  • 幂等:多次请求执行和执行一次效果是一样的
  • GET请求能保存到收藏夹中POST不能被缓存
  • Header

    • HOST:服务器主机和端口
    • Content-Length:body的数据长度
    • Content-Type:body的数据格式
      • Application/x-www-form-urlencoded:form表单提交的数据格式,body的格式类似于query string
      • Multipart/form-data:form表单的数据格式通常用于提交图片和文件
      • Application/json:body数据位json格式
    • User-Agent:浏览器、操作系统的属性。
    • Refere:界面跳转来源。直接在浏览器中输入URL或者在收藏夹中访问界面是没有refere的。
    • 浏览器提供的让程序员在本地存储数据的能力。为了防止客户端浏览器所在的主机硬盘被非法网站写入病毒程序,浏览器禁止网页代码访问主机硬盘。
    • Cookies(Cookie)数据通常储存在用户的计算机或设备上1. **浏览器的Cookie存储:** 大多数浏览器都会将Cookies数据储存在用户的计算机上。
    • 通常,这些数据会以文本文件的形式存储在计算机的文件系统中。以下是一些常见的位置:1. **浏览器的Cookie存储:** 大多数浏览器都会将Cookies数据储存在用户的计算机上。通常,这些数据会以文本文件的形式存储在计算机的文件系统中。- Windows:`C:\Users\<用户名>\AppData\Roaming\<浏览器名称>\Cookies`2. **内存中:** 有些浏览器会将Cookies数据存储在内存中,而不是在磁盘上的文件中。这意味着Cookies在浏览器会话期间可用,但一旦关闭浏览器,它们就会被删除。3. **Web存储(Web Storage):** 在一些情况下,特别是对于像HTML5中的Web存储API(localStorage和sessionStorage)来说,数据会以键值对的形式存储在浏览器中,而不是使用传统的Cookies。这些数据通常也存储在浏览器的内存中。
  • Cookie常见的用途就是保证用户登录
  • 1.1.4发送GET请求和POST请求

  • 1.1.5 抓包HTTP协议

  • 说明

  • (1)Frame物理层的数据帧概况。(2)Ethernet II一般包含源(本机)、目的地(服务器)物理地址(MAC)。(3)Internet Protocol Version 4:互联网层IP包头部信息,一般包含源(本机)、目的地(服务器)IP地址。(4)Transmission Control Protocol:传输层的数据段头部信息,此处是TCP协议,一般包含源(本机)、目的地(服务器)端口和连接状态。(5)Hypertext Transfer Protocol:应用层的信息,此处是HTTP协议。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值