Fiddler抓包工具

先来了解一下,cook,session

HTTP 是无状态的协议:每个请求都是完全独立的,服务端无法确认当前访问者的身份信息,无法分辨上一次的请求发送者和这一次请求的发送者是不是同一个客户端。服务器与浏览器为了进行会话跟踪,就必须主动的去维护一个状态,这个状态用于告诉服务端前后两个请求是否来自同一个浏览器。这个状态就需要通过 cookie 或者 session 来实现。
cookie 存储在客户端:cookie 是服务器发送到用户浏览器,并进行保存到本地的数据,它会在浏览器下次向同一服务器再发起请求时被再一次被带到并发送到服务器上面
cookie 是不可跨域名的:每个 cookie 都会绑定单一的域名,无法在别的域名下获取使用

什么是 Session
session 是区别 cookie 的另一种记录服务器和客户端会话状态的机制
session 是基于cookie 实现的,session 存储在服务器端,sessionid 会被存储到客户端的 cookie 中
在这里插入图片描述

session 认证流程
用户第一次请求服务器的时候,服务器根据用户提交的相关信息,创建对应的 session
服务器响应客户端的请求,并返回唯一标识信息 sessionid 给浏览器
浏览器把返回的 sessionid 存储到 cookie 中,同时 cookie 记录次 sessionid 属于哪个域名
当用户第二次访问服务器的时候,请求自动判断此域名下是否存在 cookie 信息,如果存在就将 cookie 信息发送给服务端,服务端会从 cookie 中获取 sessionid,再根据 sessionid 查找对应的 session 信息,如果找到 session 证明用户已经登录,可以执行后面操作,如果没有找到,说明用户没有登录或者失败。

03
cookie 和 session 的区别
安全性:session 比 cookie 安全,session 是存储在服务器端,cookie 是存储在客户端
存储值的类型不同:cookie 只支持存字符串数据,设置为其它类型的数据,需要将其转换成字符串,session 可以存任意数据类型。

有效期不同:cookie 可设置为长时间保持,session 的失效时间比较短,客户端关闭就会失效
存储大小不同:单个 cookie 保持的数据不能超过 4KB,Session 存储数据高于 cookie,当访问量过多,会占用更多的服务器资源。

04
什么是 Token(令牌)
访问接口(API)时所需要的资源凭证,比如订单接口需要带上登录返回的 token 值,才能访问订单接口数据
常见的 token 组成:UID(用户唯一的身份标识)、time(当前时间的时间戳)、sign(签名,token+ 请求数据进行几次 md5 之后的值)
token 的特点:
服务端无状态化、可扩展性好
支持移动端设备
安全性好
支持跨程序调用
token 的身份验证流程:
在这里插入图片描述

①、客户端使用用户名和密码,请求登录
②、服务端收到请求,验证用户名和密码
③、验证成功之后,服务端返回一个 token,并把这个 token 发送给客户端
④、客户端收到 token 之后,会把它存储起来,放入 cookie 里面
⑤、客户端每次想服务器请求资源的时候,都需要带着这个 token
⑥、服务端收到请求的时候,验证客户端请求里面带着的 token,如果验证成功,就向客户端返回请求的数据

每一次请求都需要携带 token,需要把 token 放到 HTTP 的请求头里面
基于 token 的用户认证,服务端不用存放 token 数据。

05
Token 和 session 的区别
Session 是一种记录服务器和客户端会话状态的机制,使服务端有状态化,可以记录会话信息。
token 是一种令牌,访问接口(API)时需要的凭证,也像古代进入到城里需要腰牌一样。token 使服务器无状态化,不会存储会话信息。
token 的安全性要好于 session,每次请求都有签名,也就会出现每次的 token 都会变化,也可以防止一定的攻击、

06
什么是 JWT
JSON Web Token(简称 JWT)是目前最流行的跨越认证解决方案。
是一种认证授权机制
JMT 是在网络应用环境之间传递声明,而执行的一种基于 JSON 的开发标准
JWT 的认证流程:
在这里插入图片描述

用户输入用户名/密码登录,服务器认证成功之后,会返回一个 JWT 给客户端
客户端将 token 保存到本地(通常使用 localstorge)
当用户访问一个受保护的路由或者资源的时候,需要请求头的 Authorization 字段中使用 Bearer 模式添加 JWT
服务端的保护路由将会检查请求头 Authorization 中的 JWT 信息,如果合法,则允许用户的行为
JWT 内部保护了一些会话信息,减少了需要查询数据库的需要
JWT 并不使用 cookie,可以使用任何域名提供你的 API 服务,不需要担心跨域的问题
用户的状态不存储在服务端的内存中,是一种无状态的认证机制

07
Token 和 JWT 的区别

相同点:
都是访问资源的令牌
都可以记录用户的信息
都是使服务端无状态化
都是只有验证成功后,客户端才能访问服务端上受保护的资源
两者的区别:
Token:服务端验证收到客户端发送过来的 token 时,需要查询数据库获取用户信息,验证 Token 是否有效
JWT:将 Token 和请求信息加密后存储在客户端,服务端只需要使用密钥进行校验即可,不需要查询或者减少查询数据库,因为 JWT 自己包含了用户信息和加密的数据

常见的前后端鉴权方式:
Session-Cookie
Token 验证(包括 JWT,sso)
Oauth2.0

Fiddler简介

在这里插入图片描述

b/s架构 (浏览器到服务器架构)

在这里插入图片描述
http是 超文本协议.

fiddler原理

Fiddler是位于客户端和服务器端的HTTP代理
在这里插入图片描述

在这里插入图片描述
因为ie 谷歌浏览器 他们默认就是读的系统代理.
在这里插入图片描述
fiddler只要打开就会设置成代理.

在这里插入图片描述
通过ping域名可以得到主机ip地址.
在这里插入图片描述
在这里插入图片描述

http

在这里插入图片描述

http请求报文

在这里插入图片描述

请求方法

在这里插入图片描述

URL :
在这里插入图片描述

请求头

在这里插入图片描述
请求头是可以自定义的.

http响应报文

在这里插入图片描述

状态码

在这里插入图片描述

响应头

在这里插入图片描述

重复测试浏览器的时候应该去缓存刷新 shift +f5

fiddler 的菜单栏

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
下面的 是 清除 不是200的状态 ,清除不是浏览器发出的
在这里插入图片描述
在这里插入图片描述
重放快捷键 r .
快捷键 shift + r 可以设置 重放次数
在这里插入图片描述

这里重复50次, 是串行的 和Jmter不一样, Jmter是并发的. 这里只是测试一下 小小的压力测试.
Jmter测试的是性能方面的.

快捷delete 是删除 , shift + delete 是删除 选中以外的.

在这里插入图片描述
上面这里设置的断点, 表示请求前断点.
上面出现连接 那里红色的T 表示 还没有发送 到服务器就停止了. 如果再点击上面go 就会发到服务器.

在这里插入图片描述
Stream 一般我们就默认的

在这里插入图片描述

find 查找可以快速定位请求

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
黄色部分为查找的内容.

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

session面板

在这里插入图片描述

Fiddler:增加IP列

运行fiddler,菜单,Rules->Customize Rules,打开“Fiddler ScriptEditor”

Ctrl+F查找“static function Main()”字符串,然后添加以下代码:

FiddlerObject.UI.lvSessions.AddBoundColumn(“ServerIP”, 120, “X-HostIP”);
在这里插入图片描述
在这里插入图片描述
保存完 重启打开 列名可以随意拖动 如下
在这里插入图片描述

命令

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
高手,可以在这个断点,响应后修改数据,在返回给客户端,去欺骗客服端.

Inspectors检测器

在这里插入图片描述
在这里插入图片描述
上面security 是安全相关的. 不是性能

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

statistics 统计

在这里插入图片描述

AutoResponder (自动响应器)

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

替换图片

在这里插入图片描述
在这里插入图片描述

Composer 设计者

Composer 里面可以一个发包功能
在这里插入图片描述

Filters

过滤器 在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
请求前断点
在这里插入图片描述
在这里插入图片描述
取消请求前断点 bpu
在这里插入图片描述
在这里插入图片描述
响应后断点
在这里插入图片描述
在这里插入图片描述
取消 bpafter
在这里插入图片描述
在这里插入图片描述

弱网测试

模拟网络限速
在这里插入图片描述
这样它就会网络延迟
它是怎么做到的呢?
主要是有个脚本, 我们也可以设置延迟长一点.
在这里插入图片描述然后勾选模拟弱网限速
在这里插入图片描述

Https抓包

在抓包https之前先进行设置
在这里插入图片描述
确定之后,我们点击确定.
然后可以查看我们安装好的证书.
在这里插入图片描述

火狐如果浏览器里面的百度抓不到,应该把fiddler的证书导出来后,在导入火狐里面
在这里插入图片描述
在这里插入图片描述

手机上 设置代理安卓app 抓包
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值