2012-05-24 2 views
0

가능한 중복 :
How to extend access token validity since offline_access deprecation긴 수명 액세스 토큰을 얻는 방법, 서버 측 (PHP)?

가 내 응용 프로그램에 대한 긴 수명 액세스 토큰 (60 일 만료 시간)을 얻을하려고합니다. 그러나 내 모든 테스트는 나에게 짧은 토큰만을 제공합니다.

내가 뭘 :

  • 먼저 짧은 수명 액세스 토큰을 얻을 수있는 고전적인 "인증"을 수행. 그래서 URL : GET의 graph.facebook.com:443/oauth/access_token?redirect_uri={my_callback} & 코드 = {the_code_given_by_fb} & CLIENT_ID = {my_client_id} & client_secret = {my_client_secret}

=> 나에게 두 개의 데이터 access_token은 (긴 문자열)을주고

  • 그런 다음 내가 긴 수명 액세스에 내 짧은 인생 액세스를 변환 할 (약 4000 초) 만료, 그래서 내가 전화를 시도했다 :
,515,

GET의 graph.facebook.com:443/oauth/access_token?redirect_uri={my_callback & 코드} = {} the_code_given_by_fb & CLIENT_ID my_client_id = {} = {& client_secret my_client_secret & fb_exchange_token} = {} short_life_access_token & grant_type = fb_exchange_token

=>이 호출은, 첫 번째 호출 (그래서 아무 긴 수명 토큰)

가 나는 또한 시도 동일한 데이터를 줘 : GET graph.facebook.com:443/oauth/access_token?client_id={my_client_id} & client_secret = {my_client_secret} & fb_exchange_token = {sh ort_life_access_token} & grant_type = fb_exchange_token

=> 같은 결과

그래서 긴 수명의 액세스 토큰을 얻기 위해 우리가 무엇을해야 이해하지 못했다

?

답변

0

올바르게 입력했습니다. 짧은 수명의 액세스 토큰을 확장했습니다. 이제 데이터베이스에 저장하고 사용하십시오. 60 일 후에 페이지 관리 사용자는 연장 된 시간을 가진 새로운 액세스 토큰을 얻으려면 60 일 이내에 앱을 다시 방문해야합니다.

은 참고 그것은 ...을 아주 이상한 만료 년대 DOC

If you pass an access_token that had a long-lived expiration time, the endpoint will 
simply pass that same access_token back to you without altering or extending the expiration time. 
+0

에서 offline access removal

모든 토큰 약 4000 초를 나타냅니다? 만료 된 데이터가 올바르게 반환되지 않았습니까? – MLKiiwy

+0

개발자 앱의 고급 설정에서 'deprecate offline_access'를 활성화 했습니까? – Venu

+0

아니요, 'deprecate offline_access'를 활성화 한 후에도 두 번째 호출 후에도 짧은 토큰을 갖게됩니다 (4000 초에 만료 됨) – MLKiiwy