2012-05-21 3 views
0

Мне нужно узнать время истечения срока действия токенов доступа Facebook.Как запросить время истечения срока действия Facebook-токена?

Я уже знаю следующие способы:

  1. продлить срок службы маркера. Ответ будет содержать время истечения токена. Но этот метод требует секретности приложения, которого мы не всегда имеем.

  2. использовать отладочный токен Facebook (https://developers.facebook.com/tools/debug). Но для этого требуется, чтобы наш код разбирал этот html-файл и выглядел не совсем изящным.

Так можно ли использовать график api/fql для запроса срока действия токена? Я искал в Google, но не получил ответа.

+0

«Но этот метод требует применения секретности, которой у нас не всегда есть». --- как это возможно? Если это ваше приложение - у вас всегда есть секрет приложения – zerkms

+0

Итак, у вас есть токены доступа, но нет приложения Secret ... как получилось? –

+0

Когда вы получаете токен доступа, вы также получаете время истечения, ВСЕГДА, за исключением токена приложения. Поэтому просто сохраните параметр * expire * рядом с токеном доступа, и вы узнаете, когда он истечет. –

ответ

0

Вы должны запросить следующую конечную точку и проверить ответ:

graph.facebook.com/debug_token? 
      input_token={token-to-inspect} 
      &access_token={app-token-or-admin-token} 

если админ маркер плохо, фб возвращает

{"error":{"message":"Invalid OAuth access token.","type":"OAuthException","code":190}}

если input_token плохо, фб возвращает

{"data":{"error":{"message":"Invalid OAuth access token.","code":190},"is_valid":false}}

/* successful response 
    * { 
      "data": { 
      "app_id": APPID, 
      "is_valid": true, 
      "application": "APPNAME", 
      "user_id": UID, 
      "issued_at": 1371671725, 
      "expires_at": 0, 
      "scopes": ["create_note", "manage_pages", "photo_upload", "publish_actions", "publish_stream", "share_item", "status_update", "video_upload"] 
      } 
     } 
    */ 
Смежные вопросы