Ich schreibe eine Chrome-Erweiterung, die HTTP-Antwort für eine Website erhalten kann. Ich versuche, Debugger zu verwenden, für die Antwort Körper bekommen:Chrome Extension: "Keine Ressource mit gegebener ID gefunden" beim Versuch, Network.getResponseBody
var gCurrentTab; chrome.debugger.onEvent.addListener(function (source, method, params) { if (gCurrentTab.id != source.tabId) { return; } if (method == "Network.loadingFinished") { var tabId = source.tabId; var requestId = params.requestId; chrome.debugger.sendCommand( source, "Network.getResponseBody", {"requestId": requestId}, function (body) { console.log(body); chrome.debugger.detach(source); }); } } ); chrome.webRequest.onBeforeRequest.addListener(function (details) { var url = details.url; if (url.indexOf('/mypage') >= 0) { chrome.tabs.query({ currentWindow: true, active: true }, function (tabs) { gCurrentTab = tabs[0]; chrome.debugger.attach({ tabId: gCurrentTab.id }, "1.0", function() { chrome.debugger.sendCommand({ tabId: gCurrentTab.id }, "Network.enable"); }); }); } }, {urls: []}, ["requestBody", "blocking"]);
Aber ich bekomme immer
Ungeprüfter runtime.lastError während debugger.sendCommand ausgeführt wird: { "Code": - 32000, "message": "Keine Ressource mit gegebener Kennung gefunden "} bei chrome-extension: //ikphgobkghdkjkfplgokmapjlbdfeegl/background.js: 11: 29
Fehler, und der Körper ist undefiniert.
Hat jemand eine Vorstellung davon, warum das passiert? Vielen Dank!
hinzufügen Können Sie auf diesem ausführen? Ich habe das gleiche Problem, aber ich kann nicht herausfinden, wie ich es beheben kann – cen0r
Hier sind Sie. Der Punkt ist, dass Sie die korrekte Anforderungs-ID und den gleichen Debugger verwenden müssen. –