1

facebook.com ページで、AJAX が読み込まれた部分 (または、Facebook が使用するテクニックと呼んでいます) が読み込まれなかった (チャット、通知など) という奇妙なバグに遭遇しました。

開発者のコ​​ンソールを起動すると、次の JavaScript エラーが表示されました。

Unsafe JavaScript attempt to access frame with URL 
https://www.facebook.com/ai.php[*] from frame with URL 
https://www.facebook.com/. 
Domains, protocols and ports must match.

* かなり長い base64 風の部分を削除しました。これはログイン データだと思うので、公開しません。

私はそれをグーグルで試してみましたが、いくつかの同様の問題に遭遇したので、投稿を二重にしないようにいくつか掘り下げましたが、ある種のアプリを介して Facebook の API を使用しているときに他のエラーがスローされました。Chrome 20.0.1132.47 ( Mac ) を使用して facebook.com ページにアクセスするだけです。

このエラーは、フレーム内の一部の Cookie がフレーム外に保存されるのを防ぐための Chrome (および明らかに Safari も) によるセキュリティ対策として、他の投稿で説明されています。XSSなどの防止。

私が見つけた投稿:

Facebook が Chrome で「安全でない JavaScript が URL を含むフレームにアクセスしようとしています」というエラーが表示される

Facebook で安全なブラウジングを使用しているときに、安全でない JavaScript がフレームにアクセスしようとする

チャネル ファイルと CDN

tl;dr:

Chrome 20 (mac) で facebook を呼び出すと、通常は js API 呼び出しでのみエラーが発生します (xss に対するセキュリティ対策)

4

1 に答える 1

2

これは、プロトコルが一致しない場合によくあるエラーです。HTTPS を使用してページにアクセスしている場合は、コードに JavaScript / CSS / 画像などの正しい HTTPS インクルードがあることを確認してください。channel.htmlファイルが HTTPS を使用してロードされていることを確認してください (またはプロトコルに依存しないようにしてください)。

于 2012-07-30T15:23:11.567 に答える