我已经使用新的https://github.com/facebook/react-native-fbsdk让 facebook 登录正常工作,但是我似乎无法获得通常在响应中返回的用户令牌。有人找到获取此信息的方法吗?另一个 SDK 的https://github.com/magus/react-native-facebook-login在登录请求中返回它,但新的 FB sdk 没有,并且 github 页面上的文档在任何地方都没有提到它。
问问题
7455 次
2 回答
10
经过一番挖掘后找到了答案。您需要使用 fbsdkcore 来访问用户令牌。下面是你如何使用它。
var FBSDKCore = require('react-native-fbsdkcore');
var {
FBSDKAccessToken,
} = FBSDKCore;
var Login = React.createClass({
render: function() {
return (
<View>
<FBSDKLoginButton
onLoginFinished={(error, result) => {
if (error) {
alert('Error logging in.');
} else {
if (result.isCanceled) {
alert('Login cancelled.');
} else {
FBSDKAccessToken.getCurrentAccessToken((token) => {
console.log(token.tokenString);
})
}
}
}}
onLogoutFinished={() => console.log('Logged out.')}
readPermissions={[]}
publishPermissions={['publish_actions']}/>
</View>
);
}
});
于 2015-08-31T21:46:37.560 回答
1
您不需要第三方模块 ( react-native-fbsdkcore
)
包 ( react-native-fbsdk
) 在其 Github 页面上有说明:https ://github.com/facebook/react-native-fbsdk#usage
用户登录后,您可以按如下方式获取访问凭据:
import { AccessToken } from 'react-native-fbsdk';
AccessToken.getCurrentAccessToken().then(data => {
console.log(data.accessToken.toString())
})
于 2021-01-10T01:24:54.073 回答