【发布时间】:2015-08-16 21:05:18
【问题描述】:
我正在快速构建一个与 API 交互的应用程序。用户可以通过两种方式退出,一种是单击退出按钮,另一种是在调用 API 时接收 401 响应。
我计划在我的 API 类中使用 NSNotificationCenter 在收到不成功的响应时广播一个事件,这样就可以在 API 类之外的一个地方处理诸如 401、400、500 之类的通用处理。
为了防止在多个地方重复注销所涉及的逻辑,我创建了一个类,它将清除所有现有令牌并显示登录视图控制器。当在视图控制器中单击注销按钮或响应观察者接收到 401 响应时,可以使用此类。
我的问题是,由于逻辑不在视图控制器内部,我不确定如何呈现登录视图控制器,因为我无权访问 self.presentViewController 方法
【问题讨论】:
-
您的类可以告诉应用委托呈现视图控制器或切换您的根视图控制器。 (见this example。
标签: ios swift logout nsnotificationcenter