我正在尝试将Auth0合并到我的Web应用程序用户登录中。但是,我总是得到“无效的验证码格式。”。
我注意到Auth0Lock提供的验证码为RRvIpXXXXXcpbWnw
,而直接GET返回www.facebook.com/dialog/oauth
的验证码要大得多。
问题是:使用Auth0,我应该如何使用验证码来交换access_token。
答案 0 :(得分:1)
看看 - https://auth0.com/docs/protocols
根据您拥有的客户端类型 - 服务器端/(可信客户端)或不受信任或SPA的应用程序,您可以决定使用哪种流程。
如果您选择使用授权代码授予流程。请使用代码和其他信息(如clientid和secret)从服务器端代码发布到oauth / token端点以检索access_token和id_token(如果指定了范围)。见下文:
POST https://tenant.auth0.com/oauth/token
内容类型:application / x-www-form-urlencoded
的client_id = CLIENT_ID&安培; REDIRECT_URI = REDIRECT_URI&安培; client_secret = CLIENT_SECRET&安培;代码= AUTHORIZATION_CODE&安培; grant_type = authorization_code&安培;范围=的OpenID ...
从响应中,您可以使用id_token调用自己的受保护API,使用access_token调用auth0 API来获取配置文件数据等。
如果您使用隐式流,则可以在一次调用授权端点时获取access_token和id_token(jwt)。
永远不会在隐式流程中验证客户端。