2012-07-25 1 views
0

통합에 문제가 : https://developers.facebook.com/docs/guides/web/는 내가 소식을 페이스 북 인증

내 웹 사이트 (장고/Python으로 작성) 자신의 로그인 시스템을 가지고있다. django-social-auth 종류의 플러그인을 사용하지 않고 페이스 북 인증을 내 웹 앱에 통합하려고합니다.

<div id="fb-root"></div> 
<script> 
    window.fbAsyncInit = function() { 
    FB.init({ 
     appId  : '{{facebook_app_id}}', // App ID 
     channelUrl : '//{{host_name}}/external/fb_channel', // Channel File 
     status  : true, // check login status 
     cookie  : true, // enable cookies to allow the server to access the session 
     xfbml  : true // parse XFBML 
    }); 
    // Additional initialization code here 
    }; 
    // Load the SDK Asynchronously 
    (function(d){ 
    var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0]; 
    if (d.getElementById(id)) {return;} 
    js = d.createElement('script'); js.id = id; js.async = true; 
    js.src = "//connect.facebook.net/en_US/all.js"; 
    ref.parentNode.insertBefore(js, ref); 
    }(document)); 
</script> 

그러나 예상대로, 내가 지시 (https://developers.facebook.com/docs/guides/web/) 및 로그인 버튼 쇼를 따랐습니다 및 클릭하면 팝업 창을 허용하는 방법을 보여줍니다 내 신청. (내 서버가 localhost 인 127.0.0.1에서 실행 중임)

그럼, 다음은 무엇입니까? 사용자가 로그인하여 허용 할 때 fb 계정으로 내 사용자를 로그인하기 위해 서버 측 유효성 검사를 수행 할 것으로 예상했습니다. 하지만 지금 무엇을해야할지 모르겠습니다.

FB로 로그인을 클릭하면 깜박 거리며 서버에 부딪치지 않습니다. 지침이 필요합니다.

감사합니다.

답변

0

내가 필요한 모든 코드를 처리 할 수는 없지만 과거 (몇 장고 사이트 포함)에 사용 된 일반적인 프로세스를 설명하고 잘하면 해당 사용자

  • 에 필요한 모든 권한을 요청

    1. Facebook JavaScript SDK
    2. 바인딩에게 "로그인 페이스 북"버튼 FB.login를 호출하는 자바 스크립트 기능을 통합 : 귀하의 사이트를 구축하는 것을 사용할 수 FB.login 호출의 function(response) 섹션에서 수익을 처리합니다. 그런 다음 Ajax POST를 Django 뷰 (이 경우 jQuery를 사용)로 가져 오면 응답을 받아 구문 분석하여 사용자의 액세스 토큰을 검색하고 해당 사용자의 사용자 프로필 객체에 저장합니다.
    3. 그런 다음이 access_token을 사용하여 해당 사용자 대신 서버 Graph API 요청을 만들 수 있습니다. 또는 원한다면 실제로 JavaScript SDK를 사용하여 클라이언트 측에서 전체적으로 전화를 걸 수 있습니다. Django 백엔드와 상호 작용하는 Ajax.