1

Facebook の Canvas コンテキストに読み込まれる Facebook アプリケーションがあります。アプリの URL (http://apps.facebook.com/myapp/) に直接アクセスすると、Facebook によって生成された signed_request にアクセス トークンが含まれていません。

ブックマークからアプリの URL にアクセスすると、access_token が正常に返されます。

アプリの URL が直接ヒットし、URL に access_token がない場合のこのケースの処理方法がわかりません。これについて私は何を誤解していますか?

ユーザーがすでに facebook にログインしている場合、署名付きリクエストにアクセス トークンがないのはなぜですか?

4

1 に答える 1

2

access_token がない場合は、Facebook がユーザーを「アプリにログインしている」と見なしていないことを意味します。通常、ユーザーが Facebook にログインしていないか、アプリを承認していないことを意味しますが、単にタイムアウトした場合などにも発生する可能性があります。

適切なことは、ここで説明されているように、ユーザーを oauth 認証ページ (ダイアログまたはリダイレクト URL) に送信することです。

その後、facebook は確実に access_token を使用してリダイレクトします。ユーザーが facebook にログインしていて、以前にアプリを承認したことがある場合は、ユーザー側で何もする必要なく、ただのクイック リダイレクトになります。

于 2012-01-11T21:48:17.800 に答える