Facebook キャンバス アプリケーションと Facebook モバイル Web アプリケーションの違いについて少し混乱しています。これが私の混乱の文脈です..
キャンバス アプリケーションがあり、その名前空間を myfbapp と呼びましょう。基本的にはhttps://apps.facebook.com/myfbappからアクセスできます。FBにログインすると、Facebookで開きます。サーバー側の実装に Java (apache/tomcat) を使用しています。簡単にするために、Web アプリケーションに index.html と authenticationfilter.java (フィルターを実装する) があるとします。Facebook 固有の Javascript API (FB.init() javascript などはありません) または index.html のコードはありません。ユーザーがキャンバス アプリケーションにアクセスするたびに、最初に Web アプリケーションへのリクエストを取得します。そこで、内部認証、セッション作成などに使用できる signed_request 、 oauth_token 、FB ユーザー ID などを取得します。このキャンバス アプリケーションにはまったく問題がなく、すべてがうまくいきます。ユーザーがこのアプリにアクセスすると、ブラウザからアプリ サーバーに取得するリクエストには、 signed_request 、 user_id などが含まれることに注意してください。
今、私はこのアプリをモバイル デバイスでも利用できるようにしたいと考えていました。Facebook の同じ myfbapp のモバイル Web アプリ セクションに、このアプリのモバイル URL を追加するだけでよいのです。私はそれを行い、AndroidフォンからFacebookにログインすると、予想どおりmyfbappがアプリセクションの下にリストされています。アプリをクリックすると問題が発生します。アプリサーバーでリクエストを受け取りましたが、 signed_request 、 user_id などが含まれていません.????? モバイル アプリがキャンバス アプリと同じように動作することを期待していましたが、どうやらそうではないか、何か間違ったことをしています。
それから、 http://developers.facebook.com/docs/guides/mobile/web/#registerでFacebook モバイル アプリの詳細を読み始めました。ここでは、さまざまな Facebook Javascript API を index.html に追加することについて説明しています (それから私のキャンバスアプリで)そして私は考え始めました.モバイルウェブアプリはFB接続を備えた通常のウェブアプリに似ているかもしれません.キャンバスアプリケーションとは異なります.これは本当ですか?