在使用Apple登录时,我是否需要完成OAuth流程(访问令牌的交换代码)?

用户登录后,授予权限,然后重定向回我的应用程序。我有这样的东西

           case RECEIVE_CONTROL_STATUS_UPDATE:
            let findItem = state.controls.find(a=>a.index===action.payload.index);
            let filtered = state.controls.filter(a=>a.index!==action.payload.index);
            let updateState = [filtered,findItem];
            return {
              ...state,constrols: updatedState
            }

创建用户帐户只需要什么,但是OAuth流程尚未完成。对于正常流程,我们将使用该代码从{"state"=>"xxx","code"=>"yyyy","id_token"=>"zzzz","user"=>"{ .... }"}

获取访问令牌

https://developer.apple.com/documentation/signinwithapplerestapi/generate_and_validate_tokens

我的问题是,我应该这样做吗?看来对目前的局势没有任何价值。

panpan319 回答:在使用Apple登录时,我是否需要完成OAuth流程(访问令牌的交换代码)?

仅在使用基于Web的登录时,基本上generate_and_validate_tokens。如果您正在使用Authenticationservices,则框架将为我们处理所有授权逻辑。因此,不需要从https://appleid.apple.com/auth/token获取访问令牌。

,

如果您要求,Apple会在用户授权后直接在回叫响应中返回 id_token ,这似乎也是您的情况。如果您只需要用户身份来创建帐户或将用户登录到您身边的关联帐户,则无需通过针对/ token api的交换代码来获取访问/刷新令牌。只需确保按照Verify the Identity token中所述验证 id_token ,然后再从中获取用户详细信息。

如果您在初始授权请求中未请求 id_token ,并且需要用户身份才能继续,则必须

交换访问/刷新/ ID令牌的授权代码。然后,您可以按照Retrieve the User’s Information from Apple ID Servers

进行获取
本文链接:https://www.f2er.com/2754498.html

大家都在问