我的印象是content_scripts在頁面上正確執行,但現在看起來好像有一些沙盒正在進行。谷歌瀏覽器擴展「內容」腳本是否被沙箱化?
我工作的一個擴展,登錄網站(用於調試和其他開發用途)的所有XHR流量,並在控制檯中,以下嗅代碼工作:
var o = window.XMLHttpRequest.prototype.open;
window.XMLHttpRequest.prototype.open = function(){
console.log(arguments, 'open');
return o.apply(this, arguments);
};
console.log('myopen');
console.log(window, window.XMLHttpRequest, window.XMLHttpRequest.prototype, o, window.XMLHttpRequest.prototype.open);
此消息記錄每次發送XHR。然而,當我把它放在擴展中時,真正的原型不會被修改。顯然,我的腳本看到的window.XMLHttpRequest.prototype與實際頁面的不同。
有沒有辦法解決這個問題?此外,這種沙箱行爲在任何地方都有記錄?我環顧四周,卻找不到任何東西。
啊,真是太遺憾了。感謝您的發現。如果只有chrome在它的擴展框架中有更多* power *的話。 – 2010-04-18 23:02:43
該死的。所以看起來好像沒有辦法攔截和修改http請求體。由於webrequest只支持修改標題,而不是requestBody ... – K2xL 2014-01-20 05:20:07