美文网首页UI
iOS如何处理网络请求用户信息失效,跳转登录页面并登录成功重新调

iOS如何处理网络请求用户信息失效,跳转登录页面并登录成功重新调

作者: 给伤的你我依然喜欢 | 来源:发表于2018-09-16 00:35 被阅读234次

    git仓库地址:https://github.com/593980284/MessageModel

    问题:

    1.在实际的开发中,我们会碰到进入一个页面,会同时请求多个接口,有的接口需要token/cookie、有的不需要。或者点击按钮调用的接口也需要token/cookie。如果此时token/cookie是失效的,那么需要跳转的登录页面(一般这样的跳转操作都封装网络请求里面)。然后需要刷新前一个页面,或者调用按钮的点击事件。(如果你不知道如何处理,让我给你巧妙的思路)

    这种情况如何去处理呢?

    有人会说用通知,显然需要定义太多key,并且需要每个页面都要注册通知,太好性能。而且要写多好多的代码,显然是不可行的。

    (其实我用block实现过,但是代码也是多了不少,几乎是重复代码。而且我也不知道到底是哪个接口的token/cookie失效,需要重新调用,我只是把需要用户信息的接口都重新调用一遍)

    解决方案:

    1.我们都知道:如果知道target、SEL、args,就能精准的调用某一个方法。我就把这3个target、SEL、args封装成了一个MessageModel 。

    2.接下来就简单。

    1。在VC或VIew网络请求方法,把当前方法保存成MessageModel ,传递到封装的网络请求中

    2.在token失效,推出登录VC的时候,MessageModel传递给VC

    3.当登录成功调用[MessageModel msgSend]

    4.我自己写了一个模拟网络请求的雏形DEMO,很简单看一下就会

    git仓库地址:https://github.com/593980284/MessageModel

    虽然思路简单,但是如果觉得很不错请给个start🙏

    相关文章

      网友评论

        本文标题:iOS如何处理网络请求用户信息失效,跳转登录页面并登录成功重新调

        本文链接:https://www.haomeiwen.com/subject/upntnftx.html