Apple SignIn 授权无效

Isk*_*sky 5 ios apple-sign-in

我已经在我的网站中使用苹果登录实现了登录/注册,一切正常。我已经创建了一个服务 ID、创建了密钥、配置了重定向 URI 并生成了客户端密钥。

现在我正在尝试在我的 iOS 应用程序上实现登录,并使用 Apple API 通过我们的后端验证登录。登录在 iOS 上正常运行,我们正确接收了授权代码,但我无法使用 Apple API 进行验证。

我在网站上使用完全相同的代码,只是更改客户端 id(我使用的是捆绑包 id)和我使用捆绑包 id 重新生成的客户端密钥。我总是得到以下回复:

{ "error": "invalid_grant", "error_description": "该代码已过期或已被撤销。" }

这是我用于验证的示例代码:

    token_url = current_app.config.get('APPLE_OAUTH_URI') + '/token'

    body = {
        'grant_type': 'authorization_code',
        'code': code,
        'redirect_uri': current_app.config.get('APP_BASE_URL') + '/login/apple/callback',
        'client_secret': client_secret,
        'client_id': client_id
    }

    headers = {
        'Content-Type': 'application/x-www-form-urlencoded'
    }

    token_response = requests.post(
        token_url,
        headers=headers,
        data=body
    )
Run Code Online (Sandbox Code Playgroud)

我缺少什么?