129

Chrome(またはその他のWebkitブラウザー)は、たとえばFacebook APIを使用している場合、これらの「安全でないJavaScriptがURLを使用してフレームにアクセスしようとします...」を大量にスローします。

実際の操作を妨げることはありませんが、JavaScriptコンソールは基本的に使用できなくなります。

特にコンソールでこれらのエラーを抑制する方法があるかどうか知りたいですか?または、他に考えられる解決策があれば、本当にありがたいです。

ありがとう。

4

5 に答える 5

19

--disable-web-securityコマンド ライン オプションを指定して chrome を実行すると、テスト中にクロスドメイン リクエストを許可できます。これはおそらくエラーを取り除くはずです(そしてFBがあなたのテストをスパイできるようにします;)

于 2010-07-25T02:33:54.757 に答える
4

これは、別のドメインからのソースがロードされ、document.cookie にアクセスしようとしたときに発生します。head ソース (スクリプト タグ) や、何らかの理由で document.cookie にアクセスしようとする iframe ドキュメントで発生します。

于 2011-05-11T17:47:10.527 に答える
4

どうしたの?

Unsafe JavaScript attempt to access frame with URL...Chrome JS コンソールの大量のエラー メッセージ。

@thechrisprojectが指摘しているように、これらのエラーは、以下を含むがこれらに限定されない、多くの評判の良いサードパーティ API およびウィジェットによって引き起こされます。

  • Facebook JS SDK
  • Vimeo Iframe 埋め込み
  • Google マップの iframe 埋め込み

理由についての私の理解:( 間違っている場合は修正してください)

Chrome のセキュリティ設定はより厳格であり、競合するブラウザよりも多くのエラーが表示されます。API/ウィジェット/埋め込みの作成者は、すべてのブラウザーで (おそらく独自のレポート/分析のために) 機能しないこと (クロスドメイン/フレーム) を試みますが、そうでない場合でもウィジェットの使用可能性に実際には影響しません。動作します(多くの厄介なエラーが発生するだけです)

素早い回答

いいえ、 Chrome コンソールでこれらのエラーを(単に) 抑制することはできません。

ソリューション?

  • それに対処します。これらのエラーは、実際にはこれらのサード パーティの API やウィジェットを壊すものではなく、コンソールの使用を非常に困難にするだけです。
  • 警告、ログ、またはデバッグ メッセージのみをログに記録するようにコンソールを設定できます。これにより、すべてのエラーが非表示になります。
  • 別のブラウザを使用できます
  • @Dagg_Nabbitとして。指摘された--disable-web-securityように、コマンド ライン オプションを指定して chrome を実行すると、クロスドメイン リクエストを許可できます。詳細はこちら: Disable same origin policy in Chrome . この設定は、ブラウザのセキュリティに悪影響を及ぼすことに注意してください。このフラグの有無にかかわらず開くことができるように、2 つの chrome ショートカットがあります。
于 2013-03-15T18:21:36.507 に答える
3

このような安全なブラウザを構築したことで Google の人々を責めることはできないので、最善の解決策は Facebook のサーバーサイド ソリューション (PHP SDK など) を使用することだと思います。頭痛が多い。FB javascript SDK を使用する唯一の利点は、javascript/jQuery を使用して自分でできるポップアップ ログインです。

于 2011-03-09T05:45:00.300 に答える
2

これらのエラーは、アプリを Facebook に登録するときに、[サイト URL] フィールドの末尾にスラッシュがない場合にスローされる可能性があります。つまり、「 http://domain.com」ではなく「http://domain.com / 」が必要です。

サイト URL の設定は、 developers.facebook.com /apps 設定の編集 -> 基本 -> サイト URLから確認できます。

于 2012-04-19T05:49:45.660 に答える