问题描述
我正在尝试开发一个应用程序,用户可以在其中切换到Instagram等多个帐户。因此,当用户登录/注册时,我将其会话令牌保存在UserDefaults中。但是,当我通过调用PFUser.become并传递旧用户的会话令牌切换到旧帐户时,会收到以下错误消息
Error Domain=Parse Code=209 "Invalid session token"
这是保存会话令牌的代码
var url : String?
if PFUser.current()?.object(forKey: UserTable.Cols.PROFILE_PIC) != nil{
url = (PFUser.current()?.object(forKey: UserTable.Cols.PROFILE_PIC) as! PFFileObject).url
}
let account = SwitchAccountDataItem(objectId: (PFUser.current()?.objectId)!,name: PFUser.current()?.object(forKey: UserTable.Cols.NAME) as! String,username: (PFUser.current()?.username)!,url: url,sessionToken: (PFUser.current()?.sessionToken)!)
let data = try! JSONEncoder().encode([account])
UserDefaults.standard.set(data,forKey: UD_SWITCH_ACCOUNT_DATA)
这是切换帐户的代码
PFUser.become(inBackground: mUsers[pos].sessionToken,block: {_,e in
SVProgressHUD.dismiss()
if(e==nil){
self.delegate?.onAccountSwitched()
self.dismiss(animated: true,completion: nil)
}else{
SVProgressHUD.showError(withStatus: "Session expired")
self.mUsers.remove(at: pos)
let data = try! JSONEncoder().encode(self.mUsers)
UserDefaults.standard.set(data,forKey: UD_SWITCH_ACCOUNT_DATA)
self.dismiss(animated: true,completion: nil)
}
})
mUsers是SwitchAccountDataItem模型的数组
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)