Stackoverflowはさまざまな方法でウェブサイトにログインします。 Facebookのログイン情報自分のウェブサイトにFacebookのログインを追加するには?
Facebookのソーシャルプラグイン(social pluginsを参照)を使用すると、好きなボタンやFacebookのログインを追加できます。しかし、それはstackoverflowによって管理されてどのようにstackoverflowアカウントとFacebookのアカウントを接続するには?
Stackoverflowはさまざまな方法でウェブサイトにログインします。 Facebookのログイン情報自分のウェブサイトにFacebookのログインを追加するには?
Facebookのソーシャルプラグイン(social pluginsを参照)を使用すると、好きなボタンやFacebookのログインを追加できます。しかし、それはstackoverflowによって管理されてどのようにstackoverflowアカウントとFacebookのアカウントを接続するには?
Facebookログインプラグインは、あなたのウェブサイトにユーザーをログインさせる方法を提供します。 StackOverflowのように、自分自身の内部システムへのリンクを自分で行う必要があります。これは、Facebookユーザの詳細に基づいて新しい「ユーザ」を作成することを意味します。
たとえば、ウェブサイトで電子メールアドレスを「ユーザー名」として使用する場合、フェイスブックユーザーに電子メールアドレスを提供するか、電子メールアドレスの許可を求める必要があります。次に、ユーザーの新しいアカウントを作成し、それらにランダムなパスワードを与えます。
また、既存のユーザーが電子メール/パスワードまたは関連するFacebookアカウントにサインインできるように、ログインフローを変更する必要があります。
Facebookの社会的なプラグイン: ログインボタン Facebookは、社会的なプラグインと呼ばれるもののホストを提供しています。私たちが興味を持っているのはログインボタンです。
あなたのサイトにはFacebookアプリが必要です。 https://developers.facebook.com/apps/に移動し、[新しいアプリケーションを作成]ボタンをクリックします。
あなたの「App Display Name」は意味があります。 私は通常、サイトのドメイン名を使用します。この同じアプリを将来他の目的にも使用できます。 「App Namespace」は、特殊文字を含まないものである必要があります。 私は通常、スペースやピリオドなどを入れずに自分のアプリの表示名を使用します。 "App Domain"とウェブサイト "Site URL"を入力する必要があります。 appドメインには、サイトがホストされているドメイン名を入力します。 サイトURLには、ウェブサイトの完全なURLを入力します。 たとえば、ドメインがname.comの場合、サイトのURLはhttp://www.name.comのようになります。 適切な情報を入力したら、変更を保存します。 「App ID」と「App Secret」が表示されたページが表示されます。 ページにログインボタンコードを追加するときにアプリIDが必要なので、そのページを開いたままにしてください。 Facebookからログインボタンコードを取得する必要があります。 http://developers.facebook.com/docs/reference/plugins/login/にアクセスし、[コードを取得]ボタンをクリックします。 最初のボックスからHTML5コードをコピーします。これは、Webページの本文タブのすぐ下に配置します。コードで
<div id="fb-root"></div>
<script>
(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) {
return;
}
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/en_US/all.js#xfbml=1&appId=APP_ID";
fjs.parentNode.insertBefore(js, fjs);
} (document, 'script', 'facebook-jssdk'));
</script>
あなたのFacebookアプリ用に作成されたアプリケーションIDとAPP_IDを交換してください:コードは次のようになります。 2番目のボックスのコードを、ログインボタンを配置する場所に貼り付けます。私はそれはユーザーがログインしているとき、表示されません真のログアウトボタンに設定しているため、データ・ショーの顔属性をfalseに変更し
<div class="fb-login-button" data-show-faces="false" data-width="200" data-max-rows="1"></div>
:コードが何かのようになります。
は、アプリの登録とfb SDKのダウンロード後、このコードは、次のとおりです。
<?php
require_once('lib/Facebook/FacebookSession.php');
require_once('lib/Facebook/FacebookRequest.php');
require_once('lib/Facebook/FacebookResponse.php');
require_once('lib/Facebook/FacebookSDKException.php');
require_once('lib/Facebook/FacebookRequestException.php');
require_once('lib/Facebook/FacebookRedirectLoginHelper.php');
require_once('lib/Facebook/FacebookAuthorizationException.php');
require_once('lib/Facebook/GraphObject.php');
require_once('lib/Facebook/GraphUser.php');
require_once('lib/Facebook/GraphSessionInfo.php');
require_once('lib/Facebook/Entities/AccessToken.php');
require_once('lib/Facebook/HttpClients/FacebookCurl.php');
require_once('lib/Facebook/HttpClients/FacebookHttpable.php');
require_once('lib/Facebook/HttpClients/FacebookCurlHttpclient.php');
use Facebook\FacebookSession;
use Facebook\FacebookRedirectLoginHelper;
use Facebook\FacebookRequest;
use Facebook\FacebookResponse;
use Facebook\FacebookSDKException;
use Facebook\FacebookRequestException;
use Facebook\FacebookAuthorizationException;
use Facebook\GraphObject;
use Facebook\GraphUser;
use Facebook\GraphSessionInfo;
use Facebook\FacebookHttpable;
use Facebook\FacebookCurlHttpClient;
use Facebook\FacebookCurl;
session_start();
$app_id="";
$app_secret="";
$redirect_url="";
FacebookSession::setDefaultApplication($app_id,$app_secret);
$helper=new FacebookRedirectLoginHelper($redirect_url);
$sess=$helper->getSessionFromRedirect();
if(isset($sess)){
\t $request=new FacebookRequest($sess,'GET','/me');
\t $response=$request->execute();
\t $graph=$response->getGraphObject(GraphUser::classname());
\t $name=$graph->getName();
\t echo 'hi $name';
\t
}
else
{
\t echo '<a href="'.$helper->getLoginUrl().'">Login with Facebook</a>';
}
を例えば登録プラグインを使用すると、リンク先のページにすぐそこにあります。もちろん、あなた自身で実装する方法もあります。ユーザーがあなたのアプリに接続して必要な情報を入手し、ページのログインシステムで新しいアカウントを作成するだけです。 – CBroe