我想检查首次登录Facebook,以便我可以提供2个选项: 1.如果是第一次登录进入验证步骤2,他们需要添加额外的细节。 2.选项2,如果已登录Facebook的用户已经被发送到主页。
我正在使用firebase,我知道如何让他们记录,但这部分我无法弄明白。我正在使用这个正常工作的函数,它只是将它们发送到右侧viewController的部分,这给我带来了麻烦:
func loginWithFacebookAction() {
print("Login with Facebook clicked")
FBSDKLoginManager().logIn(withReadPermissions: ["public_profile", "email", "user_friends"], from: self) { (result, err) in
if err != nil {
print("FB login failed", err as Any)
} else if (result?.isCancelled)! {
print("The user cancelled loggin in")
self.segueProgramaticWithPresent(viewController: LoginController())
} else {
if (FBSDKAccessToken.current() != nil) {
print("Go to main page")
self.facebookRequestUserDetails()
self.segueToAnotherView(storyboard: "Main", identifier: "SWRevealViewController")
} else {
print("Go to Step 2 - add more details")
self.segueProgramaticWithPresent(viewController: CreateAccountST2())
}
}
我正在使用FacebokToken进行检查,但是当用户单击该按钮时,它将始终返回true。
答案 0 :(得分:0)
facebook_id
存储在a上
服务器端数据库。FBSDKAccessToken.current()
并发送给
你的服务器端api,在服务器端请求图表api,access_token
和
得到facebookuser_id
https://graph.facebook.com/me?access_token= {accesstoken}哪个
只返回一个包含id
字段的json。
facebookuser_id
时,您可以检查是否是用户
已存在于您的数据库中。