स्टेटस रिटर्न पर बस इन कोड ब्लॉक को जोड़ें, और क्वेरी स्ट्रिंग ऑब्जेक्ट {} को पास करना शुरू करें। जावास्क्रिप्ट देवों के लिए
अपने एसडीके को इनिशियलाइज़ करने के बाद।
चरण 1: // लॉगिन स्थिति प्राप्त करें
$(document).ready(function($) {
FB.getLoginStatus(function(response) {
statusChangeCallback(response);
console.log(response);
});
});
यह दस्तावेज़ लोड पर जाँच करेगा और यदि उपयोगकर्ता लॉग इन कर चुका है तो अपनी लॉगिन स्थिति जाँच लें।
तब फ़ंक्शन checkLoginState को कॉल किया जाता है, और प्रतिक्रिया पास है स्थिति ChangeCallback
function checkLoginState() {
FB.getLoginStatus(function(response) {
statusChangeCallback(response);
});
}
चरण 2: आपको स्थिति से प्रतिक्रिया डेटा मिलता है
function statusChangeCallback(response) {
if(response.status === 'connected'){
let userId = response.authResponse.userID;
console.log('login');
getUserInfo(userId);
}else{
console.log('not logged in !');
}
}
इसमें उपयोगकर्ता का भी नाम है जिसे परिवर्तनशील पर सेट किया जा रहा है, फिर एक getUserInfo func को ग्राफ-एपीआई का उपयोग करके उपयोगकर्ता जानकारी प्राप्त करने के लिए कहा जाता है।
function getUserInfo(userId) {
FB.api(
'/'+userId+'/?fields=id,name,email',
'GET',
{},
function(response) {
let email = response.email;
loginViaEmail(email);
}
);
}
उपयोगकर्ता को एक तर्क के रूप में पारित करने के बाद , फ़ंक्शन तब उस उपयोगकर्ता से संबंधित सभी जानकारी प्राप्त करता है । नोट: मेरे मामले में मैं ईमेल की तलाश कर रहा था, क्योंकि मुझे एक फ़ंक्शन चलाने की अनुमति थी जो केवल ईमेल के माध्यम से उपयोगकर्ता को लॉग इन कर सकता है।
// ईमेल के माध्यम से लॉगिन करें
function loginViaEmail(email) {
let token = '{{ csrf_token() }}';
let data = {
_token:token,
email:email
}
$.ajax({
url: '/login/via/email',
type: 'POST',
dataType: 'json',
data: data,
success: function(data){
console.log(data);
if(data.status == 'success'){
window.location.href = '/dashboard';
}
if(data.status == 'info'){
window.location.href = '/create-account';
}
},
error: function(data){
console.log('Error logging in via email !');
}
});
}
var_dump($obj);
आउटपुट क्या है ?