私は保存したアクセストークンを持っています - これを使って、ユーザーに代わってFacebookに投稿します。チャレンジUIを再度ポップできるように、ユーザーの投稿を許可する前にトークンが有効であることを検証する方法はありますか?FacebookのC#APIを使用する - 保存されたアクセストークンが有効であることを確認する
2
A
答えて
1
offline_accessをリクエストしていますか?そうでない場合、トークンは期限切れになりますが、トークンを照会すると有効期限が返されます。電話をかける前にあなたの側で確認することができます。
ユーザーを検証してもアクセス許可が削除されていないか、オフラインアクセスの有効性が確認されていないため、Facebookサーバーにアクセスする必要があります。私はポストを試して、失敗した場合はエラーを処理します。トークンが有効である可能性は高いでしょう。
頻度が低いケースを処理するために、すべての呼び出しの前に確認することで、重大な違反(作業を2倍)が発生しています。アクセストークンが無効な場合は、依然としてプロンプトを表示する必要があります。そのため、エラーとプロンプトを処理するだけです。
さらに、競合状態が存在するため、とにかくエラーを処理する必要があります。 access_tokenを確認できますが、チェックとポストの間にトークンが無効になる可能性があります。
0
私の経験から(4.2を使用して)、try .. catch(OAuthExceptionが発生する可能性があります)でリクエストをラップする必要があります。そして、私はオフラインでアクセスできるシナリオについて話しています。オフラインアクセスがあり、ユーザーがFacebook内でアプリを削除した場合、オフライントークンは期限切れになります(ユーザーが他の方法でアプリを再び有効にしても)。
関連する問題
- 1. URLが有効であることを確認する方法
- 2. idTokenが有効であることを確認する方法
- 3. アソシエーションが有効であることを確認する方法
- 4. JSONとXMLが有効であることを確認しますか? c#
- 5. アクセストークンが有効かどうかを確認する - Identity Server
- 6. 安心なAPI - Facebookのアクセストークンが有効で、APPの使用を許可されているかどうかを確認してください。
- 7. ユーザが有効なWindows認証であることを確認するMVC3
- 8. vbaで有効性確認を保存する前に
- 9. リモートMySQLサーバーが有効で存在することを確認するには
- 10. 古いfacebookのアクセストークンが有効かどうか確認してください
- 11. Facebookにアクセストークンを保存するiOS SDK
- 12. Facebookがリファラーであることを確認するために使用するステートメントはどれですか?
- 13. QtDesignerで生成されたウィジェットポイントがQTimerで有効であることを確認する方法は?
- 14. Sudokuの各エントリが有効であることを確認する方法
- 15. Verilog enumが有効であることを確認するには?
- 16. uri文字列が有効であることを確認する方法
- 17. posixソケットがまだ有効であることを確認する方法
- 18. WooCommerce:クーポンが有効であることを確認してください
- 19. BitmapDataが有効であることを確認してください
- 20. 画像が有効であることを確認してください
- 21. Google APIクライアントのOAuth2アクセストークンが有効かどうかを確認してから使用してください。
- 22. クリックしたラジオボタンがデータベースに保存されている回答であることを確認します
- 23. Facebookアクセストークンを保存して後で使用できますか?
- 24. 有効なページからのリクエストが有効であることを確認する方法ノード
- 25. 有効なトークンを使用すると「無効なOAuthアクセストークン」
- 26. セレンを使用してリンクが有効であることを確認する方法
- 27. C++が有効なIPアドレスまたはIPを確認する
- 28. Facebookアクセストークンの有効期限
- 29. Facebook APIでアクセストークンを使用する必要がありますか?
- 30. イテレータがQTコンテナに有効であることを確認します。
お返事ありがとうございます。問題は、FacebookのAPIが期限切れになったときや誰かが権利を取り消したときに、未処理の例外(私のフレームの下ではない - だから私はそれを捕まえることができない)を投げるということです。だから私はSOL ...だから期限切れのためにchekcingは十分ではありません。私はkindlea SOLです。 –
私はこの例外をキャッチして処理することはできないという主張に疑問を呈します。私のアプリでC#SDKを使って常時実行され、例外を処理します。ユーザーがアクティブなセッションにいる場合は、アクセス許可/セッションを再設定します。オフラインのシナリオでは、問題にユーザーの注意を引くオプションがいくつかあります。(1)キャンバスページに戻ったときにプロンプトを表示する(2)ダッシュボードAPIメソッドを使用してカウンタを設定する(3)送信する電子メールアドレスがある場合は電子メール –
ここにはこの例外が発生するスタックがあります - 私が所有しているコードはありませんので、試してもキャッチすることはできません。 Facebook.dll!Facebook.FacebookApp.ResponseCallback(System .IAsyncResult asyncResult、Facebook.FacebookAsyncCallbackコールバック、オブジェクト状態)+ 0x5bバイト Facebook.dll!Facebook.FacebookApp.RequestCallback.AnonymousMethod__d(System.IAsyncResult ar)+ 0x12バイト System.Windows.dll!System.Net.Browser.ClientHttpWebRequest .InvokeGetResponseCallback.AnonymousMethod__8(オブジェクトの状態2) mscorlib.dll!System.Threading.ThreadPool.WorkItem.doWork(オブジェクトo) –