2011-04-07 2 views
1

oauth_token과 app_secret을 사용하여 access_token을 요청할 수 있습니까? Facebook 앱 흐름에 사용 된 signed_request의 oauth_token은 무엇입니까?

(그렇지 않을 경우, 지구에 무엇이에 대한의 oauth_token입니까?)

또는 내가 맹세 요청을 사용자 (새 세션) access_token은 검색을위한 코드를 얻기 위해 내 페이지를 방문 할 때마다해야합니까?

(그렇다면 재진입 사용자에게 원활한 사용자 환경을 제공하려면 어떻게해야합니까? jscript 리디렉션을 통해 앞뒤로 보내지 않고 동시에 FB iframe에 머물고 싶습니다.)

안부,

SD 페이지가 FB iframe에로드

답변

1

은, 페이스 북은 POST 변수에 당신에게 유효한 signed_request을 전달합니다. 페이지가 FB Canvas 응용 프로그램으로로드되는 경우 일반적으로 페이지를 가져올 필요가 없습니다.

더 이상 OAuth Token을 더 이상 사용할 필요가 없습니다. 당신이 사용하고자하는 것은 다음과 같습니다 :

1) FB 프레임 IF 에 전달 된 사용자 signed_request 2) 애플리케이션 통찰력을 끌어 오거나 요청 2.0 객체에 액세스하기위한 애플리케이션 액세스 토큰 2) 검증이 작동하지 않는 경우, 당신은 다음 페이지로 돌아가 그들이 페이스 북의 인증을 통과하려면이 URL로 보낼 수

: 당신이 signed_request (official documentation)를 처리하는 방법은 다음과

입니다 : 같은 단지 응용 프로그램을 공인하고 응용 프로그램 액세스 토큰을 얻는 방법, 당신은 공식 문서 here

을 참조 할 수있는 새로운 사용자에 대한 사용자 액세스 토큰을 얻는 방법 등 자세한 내용은

http://www.facebook.com/dialog/oauth?client_id=<YOUR_APP_ID>&redirect_uri=<URLENCODED_APP_URL> 

+0

흠,하지만 ... 제가 요청을해야합니까, 사용자가 액세스 토큰 요청 페이지 ("세션 당") 돌아올 때마다, 귀하가 참조한 문서 페이지 당 : https://graph.facebook.com/oauth/access_token? client_id = YOUR_APP_ID & redirect_uri = YOUR_URL & client_secret = YOUR_APP_SECRET & code = THE_CODE_FROM_ABOVE 또는 oauth_code를 사용하여 리디렉션 ... 정렬을받지 않고도 access_token을 가져올 수 있습니까? 아, 제 질문이 의미가 있기를 바랍니다. – stackdaemon

+0

나는 약간의 언어를 더 일찍 섞었다 - 나는 페이스 북이 당신에게 사용자를 확인하는데 필요한 "signed_request"를 전달할 것이라고 말해야한다. 원본 정보를 업데이트하여 예제에 대한 정확한 정보와 링크를 포함 시켰습니다. 희망이 도움이! – Manto

+0

좋아, 이제이 사실을 더 분명하게 알 수있다. Thx 도움! – stackdaemon

0

oauth_token은 액세스 토큰을 만들고 요청에 서명하는 데 사용 된 "공개 키"의 일종입니다. 액세스 토큰은 POST에서 가져 오는 변수 signed_request에 인코딩되어 있습니다. 페이스 북의 PHP SDK를 사용하고 있다면, 자동으로 이것을 파싱합니다 (그리고 다른 공식 SDK도 같은 방식으로 동작한다고 생각합니다). 필요하다면 $facebook->getAccessToken()으로 간단하게 전화 할 수 있습니다.