【问题标题】:Update cached PFUser currentUser?更新缓存的 PFUser currentUser?
【发布时间】:2015-07-16 17:00:45
【问题描述】:

当您使用 Parse 登录时,[PFUser currentUser] 会在设备本地缓存。我有一个问题,存储在该用户对象中的一些自定义数据可以在应用程序之外更新,所以如果用户仍然登录调用[PFUser currentUser] 将获得缓存的用户对象,因此它不会有新数据.要更新缓存的用户对象,用户必须退出并重新登录。

如何在不丢弃会话的情况下以编程方式更新/重新获取当前用户?

【问题讨论】:

  • PFUser 是一个 PFObject,所以 fetch 可以正常工作。

标签: ios parse-platform pfuser


【解决方案1】:

是的,它确实有办法从 Parse.com 处理这个问题。您可以查看 fetch 方法的类别,例如 - (BFTask *)fetchInBackground,这里是 API 的链接:https://parse.com/docs/ios/api/Classes/PFObject.html#//api/name/fetchInBackground

【讨论】:

  • 您是否尝试致电[[PFUser currentUser] fetch];
  • 请注意,[[PFUser currentUser] fetch]; 将对 Parse 服务器进行 synchronous 调用。来自 PFObject+Synchronous 类别上的 Parse docs:此类别列出了 PFObject 类的所有同步方法,但具有异步对应项,调用这些同步方法之一可能会在很长一段时间内阻塞当前线程,因为它可能是从网络获取或从磁盘保存/加载数据。
  • 此调用是否会将接收方PFUser currentUser 更新为最新版本?还是我们必须以某种方式使用PFObjectResultBlock 显式更改currentUser 并为其分配一个新值?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-02-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多