Chrome-Erweiterungs-API: chrome.tabs.captureVisibleTab auf der Hintergrundseite zum Inhaltsskript

Mein übergeordnetes Ziel war es, einen Screenshot über die Hintergrundseite zu machen, mit:

http://developer.chrome.com/extensions/tabs.html#method-captureVisibleTab

Übergeben Sie es an das Inhaltsskript, damit ich den Screenshot mit dem HTML-DOM der Seite analysieren und nach meinen Wünschen zuschneiden kann.

Es scheint jedoch nicht möglich zu sein, die dataUrl mit Message Passing an das Inhaltsskript zurückzugeben:

http://developer.chrome.com/extensions/messaging.html

Ich habe versucht, JSON.stringify (), aber ohne Erfolg.

Das funktioniert einwandfrei:

background.js

chrome.runtime.onMessage.addListener(
    function(request, sender, sendResponse) {
        sendResponse({imgSrc:'hello'});
    }
);

Ich ändere den Code darauf und nichts kommt durch:

background.js

chrome.runtime.onMessage.addListener(
    function(request, sender, sendResponse) {
        chrome.tabs.captureVisibleTab(
            null,
            {},
            function(dataUrl)
            {
                sendResponse({imgSrc:dataUrl});
            }
        )
    }
);

Mein einziger Beweis, dass die Hintergrundseite tatsächlich einen Screenshot macht, ist, dass ich das kann

chrome.tabs.captureVisibleTab(null,{},function(dataUrl){console.log(dataUrl);});

und ich verstehe

Daten: image / jpeg; base64, / 9j / 4AAQSkZJRgABAQAAA .... etc ...

angemeldet in background.html, die gültig ist

Meine Frage lautet: Wie kann ich diese URL an das Inhaltsskript senden?

Ich würde es vorziehen, nicht die gesamte Logik auf der Hintergrundseite auszuführen, die nichts auf der tatsächlich sichtbaren Seite steuern kann.