2009-10-17 3 views
1

페이스 북 연결로 시작할 필요가있는 곳에서 일하는 데 어려움을 겪고 있습니다.링크 페이스 북은 계정을 내 사이트의 사용자 계정에 연결합니다.

기본적으로 페이스 북에서 응용 프로그램을 설정하고 연결 단추가 작동합니다. 이제 페이스 북에 로그인 할 때 사용자 이름과 하나 또는 두 개의 다른 세부 정보를 입력해야하는 계정 페이지를 작성하는 Diggs 구현과 매우 유사한 것을하고 싶습니다.

반환 된 쿠키를 캡처하고 데이터베이스가 존재하는지 확인하고 수동으로 수행해야합니까, 아니면 누락 된 단계가 있습니까?

답변

0

아니요, 쿠키 사용은 권장 프로세스가 아닙니다. 나는 ASP.net 모르지만, 다음과 같은 과정은 다른 언어로 나를 위해 작동 :

  • 이 FB.getLoginStatus에 페이지로드 호출을 추가 문서에 표시된대로

    1. 이 HTML의 페이스 북 Javascript SDK 포함 예를 들어 here을 포함하고 다음과 같은 방식으로 응답을 처리합니다.
      • connected은 사용자가 이전에 사이트에 등록했으며 관련 FB 애플리케이션을 인증했음을 의미합니다. 이 경우 response.authResponse 객체에는이 사용자에 대해 데이터베이스에서 업데이트해야하는 액세스 토큰이 포함됩니다. 서버 측 코드에 대한 AJAX 호출을 통해이 작업을 수행하십시오.
      • not_authorized은 사용자가 귀하의 사이트와 연결된 FB 앱을 승인하지 않았 음을 의미합니다. 이 경우 일부 자바 스크립트를 사용하여 "연결"버튼을 표시해야합니다 (이 시점까지는 보이지 않아야합니다).
      • 다른 경우에는 사용자가 Facebook에 로그인되어 있지 않으므로 "연결"버튼이 표시됩니다.
    2. "연결"버튼에 FB.login (으)로 전화하십시오. 이 방법에 대한 문서에서 볼 수 있듯이 사용자가 앱 및 사이트에 등록하기 위해 수락해야하는 권한 대화 상자가 표시됩니다. 그들이 수락 할 때마다 귀하의 자바 스크립트 코드는 앞서 언급 한 것과 동일한 유형의 response.authResponse 개체를 받게됩니다. 이 경우 액세스 토큰과 다른 것을해야 할 것입니다. 다음은 당신이 할 수있는 일에 대한 모호한 생각이지만, 당신의 접근 방식은 대체로 유사해야합니다.
    3. 위의 FB.login의 응답 함수에서 성공적인 결과가 결정되는 곳마다 사이트 등록 양식의 HTML을 표시하거나 만드는 몇 가지 추가 자바 스크립트를 삽입하십시오. 현재 페이지에서 리디렉션하지 않는 것이 가장 좋으므로 클라이언트 측에서이 코드의 대부분을 유지할 수 있습니다 (그렇지 않으면 액세스 토큰을 어딘가에 일시적으로 저장해야합니다).
    4. 사용자를 허용합니다 이 양식에 등록 세부 정보를 입력하고 일단 제출하면 위의 authResponse에서 검색 한 액세스 토큰과 Facebook 사용자 ID를 양식 필드와 함께 전달하십시오.
    5. 서버 측 코드로이를 처리하고 새로 등록 된 사용자 세부 정보와 함께 액세스 토큰 및 FB UID를 저장하십시오.
  • 관련 문제