VS Code中Thunder Client如何导出API请求与响应内容?
批量保存Thunder Client集合请求体与响应体的三种方法
方法一:利用Thunder Client自带导出功能
- 集合运行完成后,在Thunder Client面板找到目标集合,右键点击集合名称
- 选择「Export Collection」选项
- 在导出弹窗中选择
JSON格式(该格式会包含所有请求的请求体、响应体及其他元数据) - 若需要CSV格式,可将导出的JSON文件通过本地脚本(如Python的
pandas库)或离线转换工具转成CSV
方法二:通过集合脚本自动导出CSV
如果之前的脚本失效,大概率是Thunder Client的脚本API逻辑调整,试试以下标准写法:
步骤1:收集请求与响应数据(集合的「After Request」脚本)
在集合编辑页的「Scripts」→「After Request」中粘贴:
// 获取当前请求的核心数据 const exportItem = { "请求名称": request.name, "请求URL": request.url, "请求体": JSON.stringify(request.body || ""), "响应体": JSON.stringify(response.body || "") }; // 用全局变量存储所有请求的数据 if (!globalThis.apiExportData) { globalThis.apiExportData = []; } globalThis.apiExportData.push(exportItem);
步骤2:集合运行完成后导出CSV(集合的「Collection Finish」脚本)
在集合编辑页的「Scripts」→「Collection Finish」中粘贴:
// 仅在集合运行结束时执行导出 if (event.type === "collectionFinish" && globalThis.apiExportData?.length) { // 生成CSV头部与内容 const headers = Object.keys(globalThis.apiExportData[0]); const csvRows = [ headers.join(","), ...globalThis.apiExportData.map(item => headers.map(key => `"${item[key].replace(/"/g, '""')}"`).join(",") ) ]; const csvContent = csvRows.join("\n"); // 触发浏览器下载CSV文件 thunder.download("api-request-response.csv", csvContent, "text/csv"); // 清理全局变量 delete globalThis.apiExportData; }
- 设置完成后重新运行集合,结束时会自动下载包含所有请求体和响应体的CSV文件
方法三:手动导出单个请求数据
如果仅需要部分请求的内容:
- 在Thunder Client的「History」面板找到目标请求
- 右键点击请求,选择「Export Response」导出响应体;或选择「Copy Request Body」「Copy Response Body」后粘贴到Excel等工具中整理
内容的提问来源于stack exchange,提问作者user21630859
相关产品推荐
相关产品推荐

