当我在搜索如何处理来自API的401响应时,我遇到了https://github.com/square/okhttp/wiki/Recipes#handling-authentication。我发布这里是为了了解使用此界面处理Google / Facebook等第三方身份验证的最佳方法。根据示例,我们进行同步调用并从API服务器获取新令牌。但是,当用户通过G + / FB进行身份验证时,我们可能必须进行多次不同步的呼叫
此示例基于我对如何重新向您的应用验证Google用户的理解。我会调用GoogleSignInApi.silentSignIn(),这是一个异步调用来获取ServerAuthCode / IDtoken。这将被发送到我的API服务器进行验证,并将向我的Android应用程序提供新的令牌。如果用户已撤销Google的应用安全门户网站的权限,则必须致电意图以显示同意和接受页面。在用户接受后,我要么从谷歌获得一个新令牌,要么我需要取消令牌生成过程。同样的步骤也适用于FB
由于上述过程是异步的,如何在这种情况下使用Authenticator接口?
答案 0 :(得分:0)
我建议将这些分成两个不同的流程
我做了类似于我的桌面okhttp客户端项目的事情,例如