0

私はフォローしています:https ://developers.facebook.com/docs/guides/web/

私のウェブサイトには独自のログインシステム(Django / Pythonで書かれています)があります。django-social-authのようなプラグインを使用せずに、Facebook認証を自分のWebアプリに統合したいと思います。

<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/)に従い、ログインボタンが期待どおりに表示され、クリックするとポップアップウィンドウが表示されてアプリケーションが許可されます。(ローカルホストである127.0.0.1でサーバーを実行しています)

それで、次は何ですか?ユーザーがクリックしてログインして許可すると、サーバー側で検証を行って、fbアカウントでユーザーにログインすることを期待していました。しかし、私は今何をすべきかわかりません。

クリックしてFBでログインした後、ちらつき、サーバーにヒットしません。いくつかのガイダンスが必要です。

ありがとうございました。

4

1 に答える 1

0

必要なすべてのコードを説明することはできませんが、私が過去に使用した一般的なプロセス (いくつかの Django サイトを含む) を説明することはできます。サイトを構築するには:

  1. Facebook JavaScript SDKを統合する
  2. FB.loginを呼び出す JavaScript 関数を「Facebook でログイン」ボタンにバインドし、そのユーザーに必要なすべての権限を要求します。
  3. 呼び出しのfunction(response)セクションでFB.login、返された応答を処理し、Django ビュー (これには jQuery を使用) に対して Ajax POST を実行します。Django ビューは応答を取得し、それを解析してユーザーのアクセス トークンを取得し、ユーザー プロファイルに保存します。そのユーザーのオブジェクト。
  4. 次に、この access_token を使用して、そのユーザーのサーバー側に代わって Facebook Graph APIリクエストを作成できます。または、必要に応じて、実際に JavaScript SDK を使用して、すべての呼び出しを完全にクライアント側で行い、多くの Ajax を使用して、 Django バックエンドとやり取りします。
于 2012-07-25T17:48:37.143 に答える