Fiddler 系列教程(二) Composer创建和发送HTTP Request跟手机抓包

Fiddler Composer介绍

Composer的官方帮助文档:http://www.fiddler2.com/fiddler/help/composer.asp

Fiddler的作者把HTTP Request发射器取名叫Composer(中文意思是:乐曲的创造者), 很有诗意

Fiddler Composer的功能就是用来创建HTTP Request 然后发送。 你可以自定义一个Request, 也可以手写一个Request, 你甚至可以在Web会话列表中拖拽一个已有的Request. 来创建一个新的HTTP Request.

Fiddler Composer比其他工具的优势

能创建发送HTTP Request的工具很多很多。 但是Fiddler的功能有如下的优势。

1. 能从"Web会话列表"中 拖拽一个先前捕获到的Request, 然后稍微修改一下

2. 发送Request后,还能设置断点,继续修改Request.

3. 支持在Request中上传文件

4. 支持发送多次Request.

实例: 模拟京东商城的登录

启动Fiddler, 启动IE, 打开京东,然后输入用户名和密码,登录。 Fiddler 将捕获到这个登录的Request.

1. 首先找出哪个Request 是用来登录的, 然后把它拖拽到Composer中。

[用来登录的request是这个: https://passport.360buy.com/uc/loginService?uuid=6bc79fbf-e882-49bb-b63a-6fd6ee448944]

2. 在Composer可以看到, 登录是使用POST方法, 把用户名和密码发送给服务器。 那么我们可以修改Composer中的request内容, 比如用户名为:fiddlertest@fiddler.com,密码为test1234。

3. Request造好了后, 我们按"Execute" 按钮就可以发送Request了(如果按住Shift键的同时,按"Execute". Fiddler会自动给这个Request下断点)。

4. 发送的Request,将出现在左边的Web Session列表中。

Parsed和Raw两种编辑模式

Fiddler Composer有两种编辑模式

Parsed模式(最常用), 把Request分为三个部分, Request line, Request Headesr, Request Body。 很容易创建一个Request.

Raw模式,需要你一行一行手动写一个Request。

同类工具- Firefox插件Rest Client

Firefox也有一个插件叫Rest Client, 使用起来也很方便

同类工具: Linux上的Curl

curl是个命令行工具, 功能也很强大

Fiddler是我最喜爱的工具,几乎每天都用, 我已经用了8年了。 至今我也只学会其中大概50%的功能。 Fiddler绝对称得上是"神器", 任何一个搞IT的人都得着的。

小弟我立志, 一定要把Fiddler的所有的功能和用法都写出来。 写成一个完整系列的教程。

Fiddler不但能截获各种浏览器发出的HTTP请求, 也可以截获各种智能手机发出的HTTP/HTTPS请求。

Fiddler能捕获IOS设备发出的请求,比如IPhone, IPad, MacBook. 等等苹果的设备。 同理,也可以截获Andriod,Windows Phone的等设备发出的HTTP/HTTPS。

本文介绍Fiddler截获IPhone发出的HTTP/HTTPS包

前提条件是:安装Fiddler的机器,跟Iphone 在同一个网络里, 否则IPhone不能把HTTP发送到Fiddler的机器上来。

截获智能手机发出的HTTP包有什么用?

用处一: 手机软件程序员利用Fiddler,可以截获手机发出的HTTP包, 从而调试程序

用处二: 软件测试人员用于测试智能手机上的软件。

用处三: 可以用来在App应用商店中刷排名

用处四: 截获了HTTP/HTTPS后,你想干什么就干什么,比如修改Request,或者Response.

配置Fiddler, 允许"远程连接"

打开Fiddler, Tools-> Fiddler Options 。 (配置完后记得要重启Fiddler).

选中"Decrpt HTTPS traffic", Fiddler就可以截获HTTPS请求

选中"Allow remote computers to connect". 是允许别的机器把HTTP/HTTPS请求发送到Fiddler上来

获取Fiddler所在机器的IP地址

这个简单吧。 我Fidder所在的机器地址是: 192.168.1.104

IPhone上安装Fiddler证书

这一步是为了让Fiddler能捕获HTTPS请求。 如果你只需要截获HTTP请求, 可以忽略这一步

1. 首先要知道Fiddler所在的机器的IP地址: 假如我安装了Fiddler的机器的IP地址是:192.168.1.104

2. 打开IPhone 的Safari, 访问 http://192.168.1.104:8888, 点"FiddlerRoot certificate" 然后安装证书

IPhone上配置Fiddler为代理

打开IPhone, 找到你的网络连接, 打开HTTP代理, 输入Fiddler所在机器的IP地址(比如:192.168.1.104) 以及Fiddler的端口号8888

大功告成,开始抓包

现在IPhone上的应用(比如Safari, Firefox, Itunes, App Store)发出的HTTP/HTTPS都可以被Fiddler获取。

实例: 打开Safari,  

1. 输入http://www.cnblogs.com/tankxiao. 看看Fiddler能否捕获。

2. 输入https://dynamic.12306.cn/otsweb/ 看看Fiddler能否捕获。

是不是HTTP和HTTPS都截获到了????, 你不但能截获, 还可以下断点,修改Request, 修改Response, Do what you want.

用完了, 记得把IPhone上的Fiddler代理关闭, 以免IPhone上不了网。

只能捕获HTTP,而不能捕获HTTPS的解决办法

有时候会发现, Fiddler 只能捕获IPhone发出得HTTP请求, 而不能捕获HTTPS请求, 原因可能是证书没有安装好。 解决办法是:

1. 先把IPhone上所有的Fiddler证书删除 (拿出IPhone, 点”设置“->“通用”->"描述文件")

2. 安装上面的方法,重新安装Fiddler证书

Fiddler捕获其他手机或者平板

方法类似

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/128829.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Chrome 基于 Wappalyzer 查看网站所用的前端技术栈

1. 找到谷歌商店 https://chrome.google.com/webstore/search/wappalyzer?utm_sourceext_app_menu 2. 搜索 Wappalyzer 3. 添加至Chrome 4. 使用 插件 比如打开 https://www.bilibili.com/ 就可以看到其所以用的前端技术栈了

【系统设计系列】 负载均衡和反向代理

系统设计系列初衷 System Design Primer: 英文文档 GitHub - donnemartin/system-design-primer: Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards. 中文版: https://github.com/donnemart…

一百七十二、Flume——Flume采集Kafka数据写入HDFS中(亲测有效、附截图)

一、目的 作为日志采集工具Flume,它在项目中最常见的就是采集Kafka中的数据然后写入HDFS或者HBase中,这里就是用flume采集Kafka的数据导入HDFS中 二、各工具版本 (一)Kafka kafka_2.13-3.0.0.tgz (二)…

ES 集群常用排查命令

说明:集群使用非默认端口9200,使用的是7116端口举例 一、常用命令 #1.集群健康状态 [wlsadminelastic-01~]$ curl -XGET "http://10.219.27.00:7116/_cluster/health?pretty" { cluster name":"cluster" "status"…

flutter报错-cmdline-tools component is missing

安装完androidsdk和android studio后,打开控制台,出现错误 解决办法 找到自己安装android sdk的位置,然后安装上,并将下面的勾选上 再次运行 flutter doctor 不报错,出现以下画面 Doctor summary (to see all det…

在Git中将本地分支推送到远程仓库

这里很明显 我git云端只有一个master分支 然后 我在本地创建了一个develop分支 然后 现在我想将他放在云端 首先 我们要执行 git checkout -b develop将本地切换到 develop 分支上 因为我这里已经选择的就是了 就不需要了 然后我们执行 git push origin develop这样 刷新云…

队列(Queue)的顶级理解

目录 1.队列(Queue) 的概念 2.单链表模拟实现队列 2.1创建队列 2.2入队列 2.3判断是否为空 2.4出队列 2.5获取队头元素 2.6完整代码: 2.7双向链表模拟实现队列代码 3.数组模拟实现队列代码 3.1创建队列 3.2判断是否为满 3.3检查是否为空 3.4插入元素 3…

静态路由 网络实验

静态路由 网络实验 拓扑图初步配置R1 ip 配置R2 ip 配置R3 ip 配置查看当前的路由表信息查看路由表信息配置静态路由测试 拓扑图 需求:实现 ip 192.168.1.1 到 192.168.2.1 的通信。 初步配置 R1 ip 配置 system-view sysname R1 undo info-center enable # 忽略…

公开游戏、基于有向图的游戏

目录 〇,背景 一,公开游戏、策梅洛定理 1,公开游戏 2,策梅洛定理 二,有向图游戏 1,狭义有向图游戏 2,广义有向图游戏 3,狭义有向图游戏的SG数 4,Bash Game 力扣…

在群晖上安装Nextcloud-AIO详解

本文是应网友 刘源 的要求折腾的; 什么是 Nextcloud AIO ? Nextcloud AIO 就是 Nextcloud All-in-One ,顾名思义就是一个 Nextcloud 的 All-in-One 版本,这是一个基于 Docker 的项目,它允许仅安装一个容器,…

有哪些适合初学者的编程语言?

C语言 那为什么我还要教你C语言呢?因为我想要让你成为一个更好、更强大的程序员。如果你要变得更好,C语言是一个极佳的选择,其原因有二。首先,C语言缺乏任何现代的安全功能,这意味着你必须更为警惕,时刻了…

【C++进阶】多态

👦个人主页:Weraphael ✍🏻作者简介:目前学习C和算法 ✈️专栏:C航路 🐋 希望大家多多支持,咱一起进步!😁 如果文章对你有帮助的话 欢迎 评论💬 点赞&#x1…

如何用Jmeter提取和引用Token

1.执行获取token接口 在结果树这里,使用$符号提取token值。 $根节点,$.data.token表示提取根节点下的data节点下的token节点的值。 2.使用json提取器,提取token 变量路径就是把在结果树提取的路径写上。 3.使用BeanShell取样器或者BeanShell后…

webpack打包常用配置项

webpack打包配置项 参考链接 文件结构:最基础版 先安装 npm i webpack webpack-cli --dev 运行命令:npx webpack 进行打包 1. 配置webpack.config.js文件: const path require(path); module.exports {mode: development, // 开发环境 …

MyBatis: 向oracle表中插入null字段的处理

一、可以在SQL中指定类型: Insert("insert into student values(#{name,jdbcTypeNULL},#{age})")int addStudent(Param("name")String name, Param("age") int age);二、可以进行全局配置(单独使用MyBatis时可如下配置&am…

【MATLAB第72期】基于MATLAB的LightGbm(LGBM)梯度增强决策树多输入多输出回归预测模型

【MATLAB第72期】基于MATLAB的LightGbm(LGBM)梯度增强决策树多输入多输出回归预测模型 一、学习资料 (LGBM)是一种基于梯度增强决策树(GBDT)算法。 往期研究了多输入单输出回归预测方法,本次研究多输入多输出回归预测。 参考链接: lightgbm原理参考链…

【网络编程】C++实现网络通信服务器程序||计算机网络课设||Linux系统编程||TCP协议(附源码)

TCP网络服务器 🐍 1.程序简洁🦎2. 服务端ServerTcp程序介绍🦖3.线程池ThreadPool介绍🦕 4.任务类Task介绍🐙5. 客户端Client介绍🦑6.运行结果:🦐 7. 源码🦞7.1 serverTcp…

亚马逊云科技人工智能内容审核服务:大大降低生成不安全内容的风险

生成式人工智能技术发展日新月异,现在已经能够根据文本输入生成文本和图像。Stable Diffusion是一种文本转图像模型,可以创建栩栩如生的图像应用。通过Amazon SageMaker JumpStart,使用Stable Diffusion模型轻松地从文本生成图像。 尽管生成式…

【文末送书】Matlab科学计算

欢迎关注博主 Mindtechnist 或加入【智能科技社区】一起学习和分享Linux、C、C、Python、Matlab,机器人运动控制、多机器人协作,智能优化算法,滤波估计、多传感器信息融合,机器学习,人工智能等相关领域的知识和技术。关…