HAR 到 Postman 集合转换器
指导
HAR 到 Postman 集合转换器
浏览器开发者工具、Charles代理和mitmproxy都允许您将捕获的流量保存为HAR(HTTP存档)文件,但Postman无法直接导入HAR。此转换器将在您的浏览器中将HAR导出重写为Postman收藏v2.1 JSON文件,使您可以将每个捕获的请求作为真实的Postman调用重新播放——包括请求头、查询字符串、请求体和示例响应。
如何使用
- 从Chrome / Firefox / Edge开发者工具(网络标签页 → 右键 → “保存所有为HAR并包含内容”)或从Charles、Fiddler、mitmproxy、Insomnia导出流量。
- 丢弃
.har将文件拖放到上传器或粘贴到文本区域。 - 选择如何分组请求——按主机名、按第一个路径段,或不创建文件夹。
- 可选地过滤掉静态资源、非API请求或特定状态/方法代码。
- 点击 复制 复制Postman收藏JSON,或 下载.json 保存为
name.postman_collection.json. - 在Postman中选择 文件 → 导入 并拖放文件(或以原始文本形式粘贴JSON)。
特征
- Postman收藏v2.1输出 – 生成可在Postman、Insomnia、Bruno、Hoppscotch以及任何支持v2.1模式的工具中正确导入的收藏。
- 智能分组 – 选择按主机名分组文件夹、按第一个路径段分组文件夹,或一个包含所有请求的平铺列表。
- 强大过滤 – 一键删除静态资源(CSS、JS、字体、图片、媒体),或缩小范围至单一方法、状态层级或URL的子字符串。
- 授权 → {{token}} – 将每个
Authorization头值替换为Postman变量,使JSON可以安全地与团队成员共享。 - {{baseUrl}}提升 – 检测您捕获中出现最频繁的方案+主机,并将每个请求URL重写为
{{baseUrl}}/...,从而轻松地将收藏重新定向到预发布或生产环境。 - HTTP/2清理 – 默认移除伪头(
:method,:authority,:path,:scheme)和Cookie头,以确保从Postman导入的请求能正确执行。 - 包含示例响应 – 每个导入的请求都携带捕获到的响应体和头作为Postman示例,因此模拟服务器和测试可直接使用。
- 100% 客户端 – HAR文件通常包含认证令牌和PII。转换过程完全在您的浏览器中进行;不会上传到服务器。
常问问题
-
什么是HAR(HTTP存档)文件?
HAR是一种基于JSON的开放标准,用于存档HTTP流量。W3C网络性能工作组定义了它,以便不同浏览器和工具可以共享网络活动的捕获。HAR文件包含一个顶级日志对象,带有页面元数据和一个条目数组——每个请求一个条目,每个条目包含请求、响应、时间戳和serverIPAddress字段。
-
什么是Postman收藏v2.1?
Postman收藏v2.1是Postman内部用于表示保存请求文件夹的JSON模式。它支持嵌套文件夹、请求体的多种模式(原始、urlencoded、form-data、文件、GraphQL)、示例响应、环境和变量。该模式发布在schema.getpostman.com/json/collection/v2.1.0/collection.json,并被所有现代API客户端支持。
-
为什么需要剥离 :method、:path 等头?
这些是HTTP/2协议层发出的伪头,而不是真实的HTTP头。它们不是有效的HTTP/1.1头名称,Postman无法在出站请求中发送它们。包含它们会导致导入的请求因头验证错误而失败。
-
为什么需要将Authorization替换为Postman变量?
HAR捕获包含在捕获时刻有效的精确的Bearer令牌和会话Cookie。共享该JSON会暴露这些机密。Postman变量({{token}}语法)将实际值推迟到环境,因此收藏可以作为仓库共享,而每个开发人员可以自行填写自己的凭据。
-
为什么HAR导出中有时缺少响应体?
HAR规范使content.text字段可选。Chrome和Firefox默认不包含二进制资产和非常大的响应体,而像Charles这样的工具通常需要显式设置才能记录响应体。当该字段缺失时,转换器仍会导入请求和头——仅示例响应体为空。
