アプリケーションを一度読み込み、signed_requestを受信してそれからユーザートークンを取得すると、iframe内のすべてのトランジションは内部リンク(署名付きリクエストなし)を使用して行われます。投稿リクエストでユーザーアクセストークンを更新するにはどうすればよいですか?
私は対処する必要があるいくつかの使用例があります。
が- ユーザー(AJAXではない)次のリンクをクリックして
- ユーザー
- ユーザーが必要とするサーバーにAJAX要求を送信したフォームと送られた後の要求を満たしたGETリクエストを送信します。ユーザーのアクセストークンは、直前に有効期限が切れFacebookにアクセスするには
Nr1が最も明白なケースですが、トランザクションがないため、ユーザーを/ authorizeにリダイレクトすることができます。 Nr3は、サーバーからの特別なエラーを解析し、/ authorizeにリダイレクトするのと同じ方法で解決できます。
Nr2は、非トランザクションmongodbを使用しているため、最も不愉快なケースです。したがって、私が見る唯一の解決策は、何かをする前に、/ me?に対してアクセストークンをチェックする必要があります。無効であれば、リクエスト本文全体をセッションに保存し、リダイレクトして/ authorizeしてから再度リクエストを処理します。しかし、それが有効であれば、私のトランザクションが成功したという保証はありませんが、これで問題はありません。
だから私は本当の質問は、どのようにこれらの状況に対処していると思いますか?どのようにトークンをリフレッシュしますか?どのようにそれらを処理するのですか?多分私は何か明白なものを見逃していますか
いずれのアイデアも高く評価されます。ありがとう! JavaScriptで
$access_token = $facebook->getAccessToken();
を使用できるSDK:
FB.getLoginStatus
を新鮮なアクセストークンに必要なすべての時間を取得するためにPHPで