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);
          });
      }
    }
  });
};
相关推荐
莫的感情3 分钟前
下载按钮点击一次却下载两个文件问题
前端
一个很帅的帅哥6 分钟前
JavaScript事件循环
开发语言·前端·javascript
小宁爱Python11 分钟前
Django Web 开发系列(二):视图进阶、快捷函数与请求响应处理
前端·django·sqlite
fox_11 分钟前
深入理解React中的不可变性:原理、价值与实践
前端·react.js
Github项目推荐13 分钟前
你的错误处理一团糟-是时候修复它了-🛠️
前端·后端
Code小翊18 分钟前
C语言bsearch的使用
java·c语言·前端
云枫晖19 分钟前
Webapck系列-初识Webpack
前端·javascript
慧一居士22 分钟前
HTML5 功能介绍,使用场景,对应功能点完整使用示例
前端
海在掘金6112730 分钟前
告别“undefined is not a function”:TS如何让你的函数调用更安心
前端
云中雾丽33 分钟前
Flutter中Stream的各种使用场景和实现方式
前端