22

https で Jira を使用していますが、追加の JS を使用して調整したいことがあります。私の JS は安全でないサーバーでホストされています (https が利用できません)。

セキュリティで保護されていない JS ファイルを (ブラウザー拡張機能を使用して) DOM に挿入して動的に読み込むと、Chrome から次のように通知されます。

[ブロック] のページはhttps://jiraserver/browseから安全でないコンテンツを実行しましたhttp://myserver/jira.js

これが非常に安全であることはわかりますが、気にしません。その安全でない JS ファイルをロードしたい。Chrome に自分を信頼して、自分の言うことだけを実行するように指示するにはどうすればよいですか?

私の挿入方法(拡張コード内):

document.body.appendChild((function(s){s.src='http://myserver/jira.js';return s;})(document.createElement('script')));
4

4 に答える 4

19

この Chrome サポート Q&Aによると、次のコマンド ライン フラグを使用して Chrome を起動し、Chrome が安全でないコンテンツをチェックしないようにすることができます。

--allow-running-insecure-content

コマンド フラグを使用して Chrome を実行する方法に関するドキュメントを次に示します。

于 2013-03-14T19:48:05.307 に答える
3

Chrome は、安全なページに安全でないスクリプトをロードしません。

jira.jsサーバーからロードする必要がありますか? ページに挿入する最良の方法は、拡張バンドルに含めることです。

var s = document.createElement('script');
s.src = chrome.extension.getURL("jira.js");
s.onload = function() {
    this.parentNode.removeChild(this);
};
(document.head||document.documentElement).appendChild(s);

サーバーからロードする必要がある場合は、拡張機能がスクリプトに対して XHR 要求を作成し、応答をページに挿入できると思います。

// make a XHR request, then...
var s = document.createElement('script');
s.textContent = codeFromXHR;
(document.head||document.documentElement).appendChild(s);
s.parentNode.removeChild(s);
于 2012-12-27T17:59:01.150 に答える