상태 반환시 이러한 코드 블록을 추가하고 쿼리 문자열 개체 {} 전달을 시작하면됩니다. 자바 스크립트 개발자 용
sdk를 초기화 한 후.
1 단계 : // 로그인 상태 얻기
$(document).ready(function($) {
FB.getLoginStatus(function(response) {
statusChangeCallback(response);
console.log(response);
});
});
문서로드를 확인하고 사용자가 로그인했는지 확인합니다.
그런 다음 checkLoginState 함수 가 호출되고 응답이 statusChangeCallback에 전달됩니다 .
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 !');
}
}
이것은 또한 변수로 설정되는 사용자 ID 를 가지고 있으며 , Graph-api를 사용하여 사용자 정보를 가져 오기 위해 getUserInfo func가 호출됩니다.
function getUserInfo(userId) {
FB.api(
'/'+userId+'/?fields=id,name,email',
'GET',
{},
function(response) {
let email = response.email;
loginViaEmail(email);
}
);
}
사용자 ID 를 인수로 전달한 후 함수는 해당 사용자 ID 와 관련된 모든 정보를 가져옵니다. . 참고 : 제 경우에는 이메일을 통해서만 사용자를 로그인 할 수있는 기능을 실행할 수 있도록 이메일을 찾고있었습니다.
// 이메일을 통해 로그인
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);
출력합니까?