0

ftp でしかアクセスできない Web ページを作成しています。

ftp://192.168.0.1.cutthis/mypage.html

この URL は、http プロトコルを使用した場合と同様に、ブラウザーでページを開きます。

このページには動的 GUI が含まれています。開発を容易にするために、すべての JavaScript をアクセスできるマシン (192.168.0.2) に移動したので、より迅速に編集できます。mypage.html の HTML ソース コードでは、スクリプト行は次のとおりです。

<script type="text/javascript" src="file://///192.168.0.2/myscript.js"></script>

FF と Chrome はスクリプトをロードしますが (Firebug はこれを確認しています)、実行しません。IEのみが実行します。

FF や Chrome にスクリプトを実行させるにはどうすればよいですか? または、どうすれば問題を過度に解決できますか?

4

2 に答える 2

0

MDNは同一生成元ポリシーについて述べています:

同一生成元ポリシーは、あるオリジンからロードされたドキュメントまたはスクリプトが別のオリジンからドキュメントのプロパティを取得または設定することを防ぎます。

myscript.jsは原点からのものですfile:////192.168.0.2/が、原点のあるページに読み込まれていますftp://192.168.0.1.cutthis。私の推測では、クロスドメインスクリプトは別のオリジンからロードされているため、期待する操作を実行できません。

解決策は、スクリプトとページの両方を同じオリジンでホストすることです(つまり、HTMLページを提供するfile://か、さらに良いことに、ローカルHTTPサーバーで両方を提供します)。

于 2012-08-21T14:46:01.723 に答える
0

クロスプロトコルスクリプティング?

方法 1:

Chrome の場合は、拡張機能を試してください: LocalLinks

FF の場合は、拡張機能を試してください: LocalLink、Local Filesystem Links、IE Tab

方法 2:

--allow-file-access-from-files フラグを指定して Chrome を実行するか、クロスサイト スクリプティングを無効にする他のフラグを試すことができます (警告: これは危険です)。

FF でセキュリティ ポリシーを構成します (サイト用の特別なポリシーを作成します - ここを読んでください: Links_to_local_pages_don't_workSecurity_Policies )

しかし、これがすべて役立つかどうかはまだわかりません。FTP: URL は特殊なケースです

于 2013-10-20T15:47:10.863 に答える