2

조금 혼란 스럽네요. 이 방법으로 토큰을 얻기다른 유형의 Facebook 액세스 토큰

  1. : https://graph.facebook.com/oauth/access_token? client_id=YOUR_APP_ID &client_secret=YOUR_APP_SECRET &grant_type=client_credentials
  2. 의 I는 다음과 같은 방법으로 얻을 토큰 사이의 차이점은 무엇입니까 - 나는 누군가가 나에게 그것을 명확히 할 수 있다면 드리겠습니다 Javascript SDK를 사용하여 토큰을 가져 오는 것보다 - FB.getAuthResponse()['accessToken']

두 가지 모두 다르게 보일 수 있습니다.

감사합니다.

첫 번째 방법은 페이스 북의 문서에 Login as an App 아래에 설명되어 있습니다
+0

'client_secret = YOUR_APP_SECRET'에주의하십시오. 클라이언트 측 코드 (예 : 브라우저의 자바 스크립트, 모바일 앱)에는이를 사용하지 않아야합니다. – Gan

답변

2

: 앱로 로그인

당신이 아니라 앱 대신 페이스 북 API에 요청을 할 당신이 할 수 있습니다 액세스 토큰을 얻을 수 있습니다 사용자보다 예를 들어 앱의 매개 변수를 수정하고 테스트 사용자를 생성 및 관리하거나 애플리케이션의 통계를 읽는 등의 경우 유용합니다. 앱 액세스 토큰을 사용하여 게시 권한을 부여한 사용자를 대신하여 Facebook에 콘텐츠를 게시 할 수도 있습니다.

문서에서 언급했듯이이 방법은 클라이언트 측 코드와 비교하여 악의적 인 공격자가 코드를 보호하는 서버 측 코딩에만 사용해야합니다. 기억해주세요 : 앱의 비밀은 결코 누구와도 공유하지 않는 것이 중요합니다.. 앱 비밀번호는 애플리케이션 계정 비밀번호로 생각하십시오. 다른 사람들이 귀하의 앱을 비밀로하면 귀하의 애플리케이션이 손상 될 수 있습니다. 이 메소드는 OAuth 2.0의 Client Credential Grant에 해당합니다.

두 번째 방법은 서버 측 코딩이 없을 수도있는 클라이언트 측 응용 프로그램을위한 것입니다. 이렇게하면 앱이 인증 된 사용자를 대신하여 API 호출을 할 수 있습니다. SDK의 커버 아래에서이 메소드는 OAuth 2.0의 Implicit Grant에 해당합니다.

이제는 facebook이 OAuth 2.0을 채택하고 있기 때문에 두 가지 방법이 있음을 알아야합니다.

두 가지 방법의 용도와 차이점을 완전히 이해하려면 RFC 6749 - The OAuth 2.0 Authorization Framework을 읽어 보시기 바랍니다. 텍스트를 읽기가 어려울 경우 Evernote Clearly on Google Chrome과 같은 쉬운 읽기 앱을 사용할 수 있습니다. OAuth 2.0의 간소화되고 이해하기 쉬운 버전의 경우 Aaron Parecki가 OAuth 2 Simplified을 읽을 수 있습니다.