0

Sinatra を使用して Ruby で記述され、Heroku でホストされている Facebook キャンバス アプリに取り組んでいます。

私はこれを私のコードの一部として持っています:

before do
  response.headers['P3P'] = 'CP="We have no P3P policy."' 
end

CP="HONK" など、他の値を試してみました (Facebook 開発 Web サイトで推奨されているように)。

私のアプリは Firefox と Chrome では完全に動作しますが、IE や Safari では非常に奇妙な動作をします。無期限に更新するか、1 回更新して停止するか、またはロードしない (キャンバスは空で、白です) かのいずれかです。場合によっては、または一部のコンピューターで単純に機能することもありますが、これはまれです。

content-type の値は、私のページと facebook のページの両方で同じです。

ほとんどの場合、認証リダイレクトでリロードがスタックしています。sinatra のビルトインを使用しsession[]て、現在のユーザー ID などを保存します。これらの Cookie が設定されていないと思います。また、サードパーティの Cookie が無効になっているとアプリが機能しないことも理解しています。ただし、私は P3P 設定をしているので、サード パーティの Cookie を受け入れるブラウザーで動作するはずです (私のすべてはこれを行うように設定されています)。

IE で動作させるにはどうすればよいですか?

編集:ルートに channel.html ファイルもありchannelUrl : "<%= url_no_scheme('/channel.html') %>"、 FB.init の一部です。

4

1 に答える 1

1

おそらく修正:

channel.html ファイルを無効にしますか?

デフォルトでは、Facebook は CSS display:none で空をロードし、parent.onchanneliframeready() を呼び出します。

この呼び出しは完了していないようです。

于 2012-06-09T19:04:41.040 に答える