2012-08-07 16 views
11

Stackoverflow, web sitelerine giriş yapmak için farklı yollar kullanır, örn. facebook giriş ile.facebook girişimi kendi web siteme nasıl ekleyebilirim?

Facebook sosyal eklentileri ile (bkz. social plugins) benzeri bir düğme veya bir facebook girişi ekleyebilirsiniz. Ancak facebook hesabını bir stackoverflow hesabıyla bağlamak için stackoverflow tarafından nasıl yönetiliyor?

+0

Bağlı sayfasının bu eklentisi Kayıt var: – CBroe

cevap

4

Facebook Giriş eklentisi, kullanıcıyı yalnızca web sitenize kaydetmenin bir yolunu sunar. Bağlantıyı kendi iç sisteminize yapmanız gerekir (StackOverflow'un yaptığı gibi). Bu, Facebook Kullanıcının ayrıntılarına dayalı olarak yeni bir "Kullanıcı" oluşturmak anlamına gelir. Örneğin, web sitesi "kullanıcı adı" olarak e-posta adresi kullanıyorsa, facebook kullanıcılarına e-posta adreslerini vermelerini veya e-posta adresinden izin almasını istemeniz gerekir. Örneğin; Daha sonra, kullanıcı için yeni bir hesap oluşturup onlara rasgele bir şifre verdiniz.

Ayrıca, mevcut kullanıcıların e-postaları/parolaları veya ilişkili Facebook Hesabı ile oturum açabilmeleri için giriş akışını da değiştirmeniz gerekir.

7

Facebook Sosyal Eklentisi: Oturum Açma Düğmesi Facebook, sosyal eklentileri aradıkları bir dizi sunuyor. İlgilendiğimiz, Giriş Düğmesi. Düğmenin web sayfanıza eklenmesiyle ilgili temel adımlar şunlardır:

Siteniz için bir Facebook uygulamasına ihtiyacınız var. https://developers.facebook.com/apps/'a gidin ve "Yeni Uygulama Oluştur" düğmesine tıklayın.

"Uygulama Görüntüleme Adınız" anlamlı bir şey olabilir. Genellikle site için alan adı ile giderim. Aynı uygulamayı gelecekte başka amaçlar için de kullanabilirsiniz. "Uygulama Ad Alanı" özel karakterler içermeyen bir şey olmalıdır. Genellikle uygulama ekran adlarını boşluk, nokta vb. Olmadan kullanıyorum. Artık "Uygulama Alan Adı" ve Web Sitesi "Site URL’nizi" girmeniz gerekiyor. Uygulama alanı için sitenizin barındırıldığı alan adını girin. Site URL'si için web sitenizin tam URL'sini girin. Örneğin, alan adınız.comsa, site URL'niz http://www.name.com gibi bir şey olmalıdır. Doğru bilgileri girdiğinizde değişikliklerinizi kaydedin. Artık "Uygulama Kimliği" ve "Uygulama Sırları" nı gösteren bir sayfanız olacak. Sadece bu sayfayı açık bırakın çünkü giriş düğmesi kodunu sayfanıza eklediğinizde uygulama kimliğinize ihtiyacınız olacak. Şimdi Facebook'tan giriş buton kodunu almamız gerekiyor. http://developers.facebook.com/docs/reference/plugins/login/'a gidin ve "Kodu Al" düğmesine tıklayın. HTML5 kodunu ilk kutudan kopyalayın ve şimdi web sayfanızın gövde sekmesinin hemen altına koyun. Eğer Facebook uygulaması için oluşturulan uygulama kimliğiyle APP_ID değiştirmeyi unutmayın kodunda

<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> 

: Kod şöyle görünmelidir. Şimdi, oturum açma düğmesinin nerede olmasını istediğiniz yere ikinci kutudan kodu yapıştırın. Ben kullanıcı giriş yaptığında hale olmayacaktır gerçek çıkış düğmesi olarak ayarlanmış ile çünkü veri-show-yüzler false özellik değişti

<div class="fb-login-button" data-show-faces="false" data-width="200" data-max-rows="1"></div> 

: Kod şey gibi görünmelidir.Örneğin

<?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>'; 
 
}

0

uygulama kaydıyla ve fb sdk indirildikten sonra bu kodu izleyin. Ve elbette bunu kendi başınıza uygulayabilmenin yolları var - sadece kullanıcının uygulamanıza bağlanmasını sağlayın, ihtiyacınız olan bilgileri alın ve sayfalarınızın giriş sistemi ile yeni bir hesap oluşturun.
İlgili konular