С одной стороны, вы рассматриваете это как единовременный запрос к контент-скрипту, который извлекает домен, к которому вы хотите получить доступ.
http://code.google.com/chrome/extensions/messaging.html#simple
По сути, ваш контент-скрипт настраивает слушателя:
chrome.extension.onRequest.addListener(
function(request, sender, sendResponse) {
if (request.greeting == "hello")
sendResponse({farewell: "goodbye"});
else
sendResponse({}); // snub them.
});
А ваша фоновая страница отправляет один живой запрос:
chrome.tabs.getSelected(null, function(tab) {
chrome.tabs.sendRequest(tab.id, {greeting: "hello"}, function(response) {
console.log(response.farewell);
});
});
Когда вы отправляете свой ответ, вы отправляете его в виде данных JSON, вы можете получать все, что захотите (например, html, dom, text и т. Д.).
В настоящее время это единственный способ сообщить фоновой странице что-либо о содержимом страницы. Помните, что вам потребуются скрипты содержимого и разрешения для вкладок.