Electron截取响应体

复制代码
const listenAllRequests = (childWindow) => {
  // 启用调试器, 可以选填DevTools 协议版本号,默认省略, Electron 会自动使用与当前 Electron 版本兼容的最新 DevTools 协议版本
  childWindow.webContents.debugger.attach();

  // 启用网络跟踪
  childWindow.webContents.debugger.sendCommand('Network.enable');

  // 监听网络响应
  childWindow.webContents.debugger.on('message', (event, method, params) => {
    // 处理响应, method(事件名称), Network.responseReceived表示网络请求的响应已经收到
    if (method === 'Network.responseReceived') {
      // 如果需要获取响应体内容
      if (params.response.url.indexOf('/xx/xx/xx') !== -1) {
        childWindow.webContents.debugger
          .sendCommand('Network.getResponseBody', {
            requestId: params.requestId,
          })
          .then((response) => {
            console.log('响应体内容:', response.body);
          })
          .catch((err) => {
            console.log('获取响应体失败:', err);
          });
      }
    }
  });
};
相关推荐
默_笙几秒前
🌃 HTTP 不认识你:JWT 登录鉴权的完整"酒店入住"指南
前端·javascript
Profile排查笔记18 分钟前
JavaScript 实现浏览器指纹生成:基础字段、Canvas 采样与 SHA-256 摘要
前端·人工智能·后端·自动化
不可能片场19 分钟前
Electron 子进程退化成 node 的 env 陷阱
前端·electron
奋斗吧程序媛21 分钟前
CSV文件导入功能
开发语言·javascript·ecmascript
搬砖记录员23 分钟前
录屏总黑屏?90% 的人没关这个开关——浏览器硬件加速冲突排查指南
前端·音视频开发
promiseThen26 分钟前
我用 7 条铁律管住 Cursor:让 AI 写代码不再「自由发挥」
前端·ai编程
梨想橙汁43 分钟前
JS 核心语法:运算符流程控制、函数、数组与对象实战详解
前端·javascript
七牛开发者44 分钟前
拆解 dsh:Turn 与 Step 如何组织 Agent 主循环
前端·javascript·人工智能
空想兔44 分钟前
前端网络请求的前世今生:从 Ajax、XHR 到 Fetch 和 Axios
javascript
梨想橙汁1 小时前
JavaScript 零基础入门:引入方式、变量与数据类型,吃透原始与引用类型
前端·javascript