您需要使用的accessToken与LoginManager一起函数来获取令牌时登录成功
_fbAuth() {
LoginManager.logInWithReadPermissions(['public_profile']).then(function (result) {
if (result.isCancelled) {
console.log('Login was Cancelled');
} else {
const { navigate } = this.props.navigation;
//
console.log('Login Successful' + result.grantedPermissions.toString());
}
}, function (error) {
console.log('An error has occured' + error);
})
}
代码。在接收到令牌后,我们可以使用此令牌来使用facebook的图表API检索登录用户的数据。
考虑下面的代码:
import { LoginManager, AccessToken } from 'react-native-fbsdk';
async _fbAuth() {
let { isCancelled } = await LoginManager.logInWithReadPermissions(['public_profile','user_posts']);
if (!isCancelled) {
let data = await AccessToken.getCurrentAccessToken();
let token = data.accessToken.toString();
await afterLoginComplete(token);
}
else {
console.log('Login incomplete');
}
}
const afterLoginComplete = async (token) => {
const response = await fetch(
`https://graph.facebook.com/me?fields=id,name,first_name,last_name,gender,picture,cover&access_token=${token}`);
let result = await response.json();
// use this result as per the requirement
};
你可以学习如何使用Facebook的图形API从here
https://developers.facebook.com/docs/facebook-登录/权限/概述 我不知道你需要什么数据。但是您将获得电子邮件地址访问,出生日期,姓名等基本权限。Facebook不允许获取所有用户数据。 –