【保姆级教程】 全网最强HTTP+Fiddler抓包实战超级全面图文教程 《Fiddler辅助标签工具栏详解之Composer 设计请求发送到服务器》

简介: Fiddler辅助标签工具栏详解
Composer 设计请求发送到服务器

它可以允许我们自定义请求报文来发送到服务端,当然也可以手动创建一个新的请求,也可以从会话列表中拖拽一个现有的请求去发送!

Parsed(解析模式)下我们只需要提供简单的URL地址就可以了, 并且还可以在RequestBody中去定制一些属性,例如模拟浏览器消息头User-Agent

但是Composer 通常在我们开发项目当中用于接口测试 也是经常用于测试一些api接口的最好方法!

当然有时候也可以通过Composer来校验后端接口的严谨,从而跳过一些前端的限制,去直接访问后端代码的逻辑!

Composer下还有几个子集选项卡:Parsed、Raw、Scratchpad、Options

具体解释如下表:

选项卡 描述
Parsed 表示已经被解析的整个HTTP请求,包括请求行,请求头和请求体,说通俗一点也就是最直观的看到Request请求的详细展示
Raw 按照真实原生HTTP请求标准来进行展示的格式!
Scratchpad 可以存储已经收集好的HTTP请求,可存储多个不同的请求, 你可以理解为请求回放功能, 鼠标连续点击三次即可选中要选择的请求来进行发送!
Options 设置一些请求选项

其中options中的设置项如下表:

名称 描述
Inspect Session 检查会话,当开启此功能并重放的时候,会自动跳入Inspectors功能模块,进行检查HTTP请求和响应。
Fix Content-Length header 当使用POST请求进行重放的时候,如果没有Content-Length的请求头,Fiddler会自动加上此请求头,如果有但是请求正文大小错误,则它会自动修正。默认勾选。
Follow Redirects 会自动重定向301,302的请求。
Automatically Authenticate 自动进行身份认证,包括认证NTLM,http 401,http 407
UI Options 此功能是在原有的Fiddler功能选项里面,将Composer这个功能弹出一个浮动窗口,如果不需要直接关闭这个窗口就会恢复原样。
..................................................

我们用得最多的也就是Parsed(详细展示请求结构)

如图

Composer_0.png

举个例子🍐 我们用图灵机器人来测试一个POST请求的智能聊天对话接口!

图灵机器人接口信息

接口信息 描述
http: //openapi.turingapi.com/openapi/api/v2 接口地址
请求方式 HTTP POST
请求参数 请求参数格式为 JSON

参数格式

{
    "perception": {
        "inputText": {
            "text": "聊天文字"
        },
    },
    "userInfo": {
        "apiKey": "申请的key",
        "userId": "随机32位字符串"
    }
}

文档说明 https://www.kancloud.cn/turing/www-tuling123-com/718227

操作流程

那么使用Fiddler调试一个POST请求并带有json格式的数据,我们可以打开Composer面板, 在Composer面板中的第一个下拉框中选择POST请求方式,然后输入请求接口的地址!

Request Headers中也可以输入一些请求头信息,也可以不输入,它会帮你自动生成

然后在Request Body中输入请求的JSON数据

最后点击Execute(执行),若在会话列表中看到结果返回200表示操作成功!

如图

Composer_1.png

这个时候,我们就可以在Inspectors里面查看到请求响应的结果了!

如图

Composer_2.png

如果返回的JSON数据格式不清楚,其实你可以拿到一些数据格式化网站上去格式化一下就可以了

如图

Composer_3.png

再举个例子🍐 我们再请求一个GET请求

如图

Composer_4.png

这样就可以返回数据了!

以上这些都是测试的第三方接口,如果是你自己写的api接口也是可以这样子来测试的!

总而言之:Composer可以帮助你去发送数据包,帮助你去做一些接口测试,帮助你去做一些平常没办法做到的一些测试!☺️

相关文章
|
2月前
|
JSON 监控 API
掌握使用 requests 库发送各种 HTTP 请求和处理 API 响应
本课程全面讲解了使用 Python 的 requests 库进行 API 请求与响应处理,内容涵盖环境搭建、GET 与 POST 请求、参数传递、错误处理、请求头设置及实战项目开发。通过实例教学,学员可掌握基础到高级技巧,并完成天气查询应用等实际项目,适合初学者快速上手网络编程与 API 调用。
420 130
|
4月前
|
人工智能 JavaScript API
零基础构建MCP服务器:TypeScript/Python双语言实战指南
作为一名深耕技术领域多年的博主摘星,我深刻感受到了MCP(Model Context Protocol)协议在AI生态系统中的革命性意义。MCP作为Anthropic推出的开放标准,正在重新定义AI应用与外部系统的交互方式,它不仅解决了传统API集成的复杂性问题,更为开发者提供了一个统一、安全、高效的连接框架。在过去几个月的实践中,我发现许多开发者对MCP的概念理解透彻,但在实际动手构建MCP服务器时却遇到了各种技术壁垒。从环境配置的细节问题到SDK API的深度理解,从第一个Hello World程序的调试到生产环境的部署优化,每一个环节都可能成为初学者的绊脚石。因此,我决定撰写这篇全面的实
763 67
零基础构建MCP服务器:TypeScript/Python双语言实战指南
|
20天前
|
弹性计算 人工智能 前端开发
在阿里云ECS上部署n8n自动化工作流:U2实例实战
本文介绍如何在阿里云ECS的u2i/u2a实例上部署开源工作流自动化平台n8n,利用Docker快速搭建并配置定时任务,实现如每日抓取MuleRun新AI Agent并推送通知等自动化流程。内容涵盖环境准备、安全组设置、实战案例与优化建议,助力高效构建低维护成本的自动化系统。
252 5
|
3月前
HTTP协议中请求方式GET 与 POST 什么区别 ?
GET和POST的主要区别在于参数传递方式、安全性和应用场景。GET通过URL传递参数,长度受限且安全性较低,适合获取数据;而POST通过请求体传递参数,安全性更高,适合提交数据。
459 2
|
3月前
|
运维 网络协议 安全
为什么经过IPSec隧道后HTTPS会访问不通?一次隧道环境下的实战分析
本文介绍了一个典型的 HTTPS 无法访问问题的排查过程。问题表现为 HTTP 正常而 HTTPS 无法打开,最终发现是由于 MTU 设置不当导致报文被丢弃。HTTPS 因禁止分片,对 MTU 更敏感。解决方案包括调整 MSS 或中间设备干预。
|
4月前
|
Go 定位技术
Golang中设置HTTP请求代理的策略
在实际应用中,可能还需要处理代理服务器的连接稳定性、响应时间、以及错误处理等。因此,建议在使用代理时增加适当的错误重试机制,以确保网络请求的健壮性。此外,由于网络编程涉及的细节较多,彻底测试以确认代理配置符合预期的行为也是十分重要的。
195 8
|
3月前
|
JSON JavaScript API
Python模拟HTTP请求实现APP自动签到
Python模拟HTTP请求实现APP自动签到
|
3月前
|
数据采集 JSON Go
Go语言实战案例:实现HTTP客户端请求并解析响应
本文是 Go 网络与并发实战系列的第 2 篇,详细介绍如何使用 Go 构建 HTTP 客户端,涵盖请求发送、响应解析、错误处理、Header 与 Body 提取等流程,并通过实战代码演示如何并发请求多个 URL,适合希望掌握 Go 网络编程基础的开发者。
|
4月前
|
JSON 前端开发 Go
Go语言实战:创建一个简单的 HTTP 服务器
本篇是《Go语言101实战》系列之一,讲解如何使用Go构建基础HTTP服务器。涵盖Go语言并发优势、HTTP服务搭建、路由处理、日志记录及测试方法,助你掌握高性能Web服务开发核心技能。
|
4月前
|
缓存 JavaScript 前端开发
Vue 3 HTTP请求封装导致响应结果无法在浏览器中获取,尽管实际请求已成功。
通过逐项检查和调试,最终可以定位问题所在,修复后便能正常在浏览器中获取响应结果。
206 0