2011-11-03 5 views
1

Facebook OAuth에 도움이 필요합니다. 내 웹 페이지 용 페이스 북 뉴스 피드 가젯을 만들려고합니다. 내가 한 일은 페이스 북 로그인 페이지를 만들고 확인 코드를받은 다음 액세스 토큰을 얻은 것입니다. 액세스 토큰에 만료 매개 변수가 있습니다.Facebook OAuth AccessToken 만료일

제 질문은 토큰이 만료되면 어떻게됩니까? 새로운 토큰 사용자가 다시 로그인하게됩니까? 웹 페이지를 탐색 할 때마다 데이터베이스에 저장할 수 있기 때문에 언제든지 액세스 할 수 있습니다.

액세스 토큰을 사용하는 경우에도 여전히 만료됩니까? 아니면 주어진 만료 시간 동안 사용되지 않으면 만료됩니까?

+0

모두에게 감사! – Gasim

답변

1

초기 질문에 대한 대답은 사용자가 로그인되어있는 동안에 만 액세스 토큰이 유효하다는 것입니다. 그렇기 때문에 사이트에 로그인 할 때마다 새로운 access_token을 검색해야합니다. 자세한 내용은 authentication flow documentation에 나와 있습니다.

만료가없는 (또는 유효 기간이 긴) 액세스 토큰을 얻으려면 사용자에게 offline_access의 권한을 부여 받아야합니다. 범위에서 설정해야합니다.

여기 this documentation에서 offline_access 권한에 대한 설명입니다 :

오프라인 액세스 - 언제든지 사용자를 대신 인증 된 요청을 수행하기 위해 응용 프로그램을 활성화합니다. 기본적으로 대부분의 액세스 토큰은 짧은 기간 후에 만료되어 응용 프로그램이 실제로 응용 프로그램을 사용하고있을 때 응용 프로그램이 사용자를 대신하여 요청하도록합니다. 이 권한은 OAuth 엔드 포인트가 반환 한 액세스 토큰을 오래도록 만듭니다.

그러나 이렇게해도 영원히 액세스 할 수는 없습니다. 사용자가 암호를 변경하거나 응용 프로그램의 인증을 취소 한 경우 사용자에게 새 access_token을 얻으려면 권한을 다시 부여해야합니다. 만료 된 액세스 토큰을 사용하려고하면 오류 메시지가 반환됩니다. 그래서 그러한 사건을 허용 할 흐름을 갖는 것이 중요합니다. 상세 정보

1

필자가 알고있는 바로는 사용자가 fconnect를하는 동안 언제든지 내 정보에 액세스 (offline_access)를 요청하여이를 수행 할 수 있습니다.