私はデバッグ ツールを作成しています。その一部は、console.log 呼び出しをキャプチャし、WebSocket を介して出力を送信することになっている Chrome 拡張機能です。
console.log をコンテンツ ページにラップして、バックグラウンド スクリプトにメッセージを送信するにはどうすればよいですか? 以下は機能しません:
function requestContent() {
var code = [
"var __console_log = window.console.log;",
"function __sendSublime(msg) {",
"chrome.extension.sendRequest(null, {",
"method: 'send',",
"data: msg",
"});",
"__console_log(msg);",
"}",
"window.console.log = __sendSublime;"].join('');
chrome.tabs.executeScript(null, {code: code});
}
バックグラウンドスクリプトからこの関数を呼び出しています。