user

public extension User
extension User: ObservableObject
  • 将当前经过身份验证的用户与新身份关联,其中该身份由指定为参数的档案定义。 仅当此User当前已通过创建它的客户端进行身份验证时,此操作才会成功。 成功后,将返回一个带有新链接凭证的新用户。 @param凭证用于将用户链接到新身份的Credentials 。 @completion 最终返回带有用户数据的Result.success(User)Result.failure(Error)的完成。

    声明

    迅速

    func linkUser(credentials: Credentials, _ completion: @escaping (Result<User, Error>) -> Void)
  • 创建同步配置实例。

    可以选择指定其他设置。这些设置的说明如下。

    enableSSLValidation 默认为 true。可以出于调试目的将其禁用。

    警告

    切勿对生产中运行的系统禁用 SSL 验证。

    声明

    迅速

    func configuration<T>(partitionValue: T) -> Realm.Configuration where T : BSON
  • 创建同步配置实例。

    警告

    切勿对生产中运行的系统禁用 SSL 验证。

    声明

    迅速

    func configuration(partitionValue: AnyBSON,
                       cancelAsyncOpenOnNonFatalErrors: Bool = false) -> Realm.Configuration

    参数

    partitionValue

    nil作为分区值。

    cancelAsyncOpenOnNonFatalErrors

    默认情况下,Realm.asyncOpen() 吞掉非致命连接错误,例如连接尝试超时,并简单地重试直到成功。 如果将其设置为true ,则错误将报告给回调,并且异步打开将被取消。

  • 创建同步配置实例。

    警告

    切勿对生产中运行的系统禁用 SSL 验证。

    声明

    迅速

    func configuration<T: BSON>(partitionValue: T,
                                cancelAsyncOpenOnNonFatalErrors: Bool = false) -> Realm.Configuration

    参数

    partitionValue

    Realm 分区所依据的BSON值。

    cancelAsyncOpenOnNonFatalErrors

    默认情况下,Realm.asyncOpen() 吞掉非致命连接错误,例如连接尝试超时,并简单地重试直到成功。 如果将其设置为true ,则错误将报告给回调,并且异步打开将被取消。

  • 用户的自定义数据。这是在 MongoDB Realm 应用程序中配置的。

    声明

    迅速

    var customData: Document { get }
  • 用于与远程 MongoDB 实例交互的客户端

    声明

    迅速

    func mongoClient(_ serviceName: String) -> MongoClient

    参数

    serviceName

    MongoDB 服务的名称

    返回值

    用于与远程 MongoDB 服务交互的MongoClient

  • 使用提供的名称和参数调用 MongoDB Realm 函数。

    user.functions.sum([1, 2, 3, 4, 5]) { sum, error in
        guard case let .int64(value) = sum else {
            print(error?.localizedDescription)
        }
    
        assert(value == 15)
    }
    

    动态成员名称(上例中为sum )与函数名称直接关联。 第一个参数是要提供给函数的BSONArray参数。 第二个也是最后一个参数是函数调用完成时要调用的完成处理程序。 此处理程序在非主全局DispatchQueue上执行。

    声明

    迅速

    var functions: Functions { get }
  • 刷新用户的自定义数据。 这实际上会刷新用户的身份验证会话。 @returns A publisher that eventually return Dictionary with user’s data or Error.

    声明

    迅速

    func refreshCustomData() -> Future<[AnyHashable : Any], Error>
  • 将当前经过身份验证的用户与新身份关联,其中该身份由指定为参数的档案定义。 仅当此User当前已通过创建它的客户端进行身份验证时,此操作才会成功。 成功后,将返回一个带有新链接凭证的新用户。 @param凭证用于将用户链接到新身份的Credentials 。 @returns 最终返回Result.successError的发布者。

    声明

    迅速

    func linkUser(credentials: Credentials) -> Future<User, Error>
  • 删除用户 这将注销并销毁与该用户相关的会话。 如果未找到用户或已删除用户,则完成区块将返回错误。 @returns 最终返回Result.successError的发布者。

    声明

    迅速

    func remove() -> Future<Void, Error>
  • 注销当前用户。如果用户是匿名用户,则状态将设置为Removed ;如果通过用户名/密码或第三方身份验证客户端进行身份验证,则状态将设置为LoggedOut /如果注销请求失败,此方法仍将清除本地身份验证状态。 @returns 最终返回Result.successError的发布者。

    声明

    迅速

    func logOut() -> Future<Void, Error>
  • 每次用户更改时发出 Void 的发布者。

    尽管有这个名称,但它实际上是在用户更改发出的。

    声明

    迅速

    public var objectWillChange: UserPublisher { get }
  • 刷新用户的自定义数据。 这实际上会刷新用户的身份验证会话。 @completion 最终返回带有用户数据的Result.success(Dictionary)Result.failure(Error)的完成。

    声明

    迅速

    func refreshCustomData(_ completion: @escaping (Result<[AnyHashable : Any], Error>) -> Void)