i working on 1 application in using google plus login
works fine want integrate parse also
have refer example
func finishedwithauth(auth: gtmoauth2authentication!, error: nserror!) { let token = auth.accesstoken pfuser.becomeinbackground(token, block: { (user : pfuser?, error : nserror?) -> void in if error != nil { print("error in become user : \(error)") } else { print("user : \(user)") } }) }
but give me error
error in become user : optional(error domain=parse code=209 "invalid session token" userinfo={code=209, temporary=0, error=invalid session token, nslocalizeddescription=invalid session token})
i have try example login google plus in ios on parse.com
in objective c ,try convert swift2 give error
please give me correct solution
finally solved issues
convert answer swift code , work fine
func finishedwithauth(auth: gtmoauth2authentication!, error: nserror!) { if error == nil && auth.expirationdate.compare(nsdate(timeintervalsincenow: 0)) == nscomparisonresult.ordereddescending { let user = gppsignin.sharedinstance().googleplususer let username = user.name.jsonvalueforkey("givenname") as! string let useremail = gppsignin.sharedinstance().useremail let pfuser = pfuser() pfuser.username = username pfuser.email = useremail let userpassword = "\(username)@123" pfuser.password = userpassword pfuser.signupinbackgroundwithblock({ (success, error : nserror?) -> void in if error == nil { let plusservice = gtlserviceplus() plusservice.retryenabled = true plusservice.authorizer = gppsignin.sharedinstance().authentication let query : gtlqueryplus! = gtlqueryplus.queryforpeoplegetwithuserid("me") as! gtlqueryplus plusservice.executequery(query, completionhandler: { (ticket, person, error) -> void in if error != nil { print("error in execute query : \(error!)") } else { let aperson : gtlplusperson! = person as! gtlplusperson let imgurl = aperson.image.url if let imgdata = nsdata(contentsofurl: nsurl(string: imgurl)!) { self.userprofilepic.image = uiimage(data: imgdata) } let currentuser = pfuser.currentuser() currentuser?.username = aperson.displayname currentuser?.saveinbackground() } }) } else { print("error in signup : \(error!.localizeddescription)") pfuser.loginwithusernameinbackground(self.username, password: userpassword, block: { (user : pfuser?, error : nserror?) -> void in if error == nil { print("login sccessfully") } else { print("error in login : \(error!.localizeddescription)") } }) } }) } else { print("error in authentication : \(error.localizeddescription)") } }
hope someone!!!
Comments
Post a Comment