Firefox(およびChrome)のクライアント側でX-Frame-Optionヘッダーを無効にしたいのですが。私が見つけたもの: 「X-Frame-Optionsによって禁止されている表示」を克服する クライアント側以外のソリューションは私の目的には適していません
https://bugzilla.mozilla.org/show_bug.cgi?id=70789 これはかなり近いようです。コードuser_pref( "b2g.ignoreXFrameOptions"、true);を使用してプロファイルディレクトリにuser.jsを作成してみました。しかし、それは機能しませんでした。最後から2番目のエントリは、変更されたコードでffをコンパイルすることを意味しているようです。これが事実である場合、それは私にとっても可能な解決策ではありません。
YouTubeビデオのリストをiframeに連続してロードすることでループする、いくつかのJSを含む小さなHTMLページを作成しました。 YouTubeがプレイリストをサポートしていることは知っていますが、プレイリストはひどいので、動画をダウンロードしたくありません。また、ブラウザがローカルファイルのX-Frame-Optionのみを無視するのであれば便利です。これを無効にすることで、私が引き裂くセキュリティホールをいくらか最小限に抑えることができます。 Chromeに関しては、解決策は素晴らしいでしょうが、それほど重要ではありません。
別のアプローチは、HTTP応答を含む着信TCP/IPパケットを傍受し、このヘッダー行を削除することだと思いますが、これはかなりやり過ぎです。
[編集]多くの動画では埋め込みが許可されていないため、youtube.com/embedの使用は悪い回避策です...
これは、Firefox拡張機能を介してHTTPオブザーバーを使用して簡単に実現できます。そのオブザーバーは次のようになります。
let myListener =
{
observe : function (aSubject, aTopic, aData)
{
if (aTopic == "http-on-examine-response")
{
let channel = aSubject.QueryInterface(Ci.nsIHttpChannel);
try
{ // getResponseHeader will throw if the header isn't set
let hasXFO = channel.getResponseHeader('X-Frame-Options');
if (hasXFO)
{
// Header found, disable it
channel.setResponseHeader('X-Frame-Options', '', false);
}
}
catch (e) {}
}
}
}
MDN [1] [2]にオブザーバーをインストールする方法などの詳細情報を見つけることができます。
[1]: https://developer.mozilla.org/en/docs/Observer_Notifications#HTTP_requests
[2]: https://developer.mozilla.org/en-US/docs/Setting_HTTP_request_headers#Registering
Diegocrコードを使用して、ヘッダーにX-Frame-Optionsが含まれているWebページを表示できるようにするFirefoxアドオンを作成しました。これにより、iframe経由でアクセスしたときに表示されます。ここからダウンロード/インストールできます: https://addons.mozilla.org/en-US/firefox/addon/ignore-x-frame-options/
上記の他の回答 で RenéHoukema で言及されているFirefox拡張機能は機能しなくなったため、新しい拡張機能を作成しました。
https://addons.mozilla.org/fr/firefox/addon/ignore-x-frame-options-header/
この拡張機能はQuantumとも互換性があります。
ソースと更新: https://github.com/ThomazPom/Moz-Ext-Ignore-X-Frame-Options