Redirect Google OAuth 2和状态参数值需要在重定向url中注册

Redirect Google OAuth 2和状态参数值需要在重定向url中注册,redirect,oauth-2.0,state,mismatch,Redirect,Oauth 2.0,State,Mismatch,Google Oauth 2.0文档中的状态参数: 指示收到响应后可能对应用程序有用的任何状态。GoogleAuthorization服务器往返于此参数,因此您的应用程序将收到与其发送的值相同的值。可能的用途包括将用户重定向到站点中的正确资源、nonce和跨站点请求伪造缓解 我想使用state参数作为一种手段来了解原始oauth请求是从哪个子域发起的。但是redirect_state参数似乎需要注册为“授权重定向URI”的一部分。如果没有,我得到: 错误:重定向\u uri\u不匹配 请求中的重

Google Oauth 2.0文档中的状态参数:

指示收到响应后可能对应用程序有用的任何状态。GoogleAuthorization服务器往返于此参数,因此您的应用程序将收到与其发送的值相同的值。可能的用途包括将用户重定向到站点中的正确资源、nonce和跨站点请求伪造缓解

我想使用state参数作为一种手段来了解原始oauth请求是从哪个子域发起的。但是redirect_state参数似乎需要注册为“授权重定向URI”的一部分。如果没有,我得到:

错误:重定向\u uri\u不匹配 请求中的重定向URI:与注册的重定向URI不匹配


我想要一个解决方案,它不需要在授权的重定向URI中注册所有可能的重定向状态值,因为这不是很容易维护的。想法?

参数的名称是
状态
(而不是重定向状态)

根据google文档,OAuth请求示例为->

https://accounts.google.com/o/oauth2/auth?
scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.profile&
state=%2Fprofile&
redirect_uri=https%3A%2F%2Foauth2-login-demo.appspot.com%2Fcode&
response_type=code&
client_id=812741506391.apps.googleusercontent.com&approval_prompt=force
请注意
State
参数和
redirect\u uri
参数。我想你把这两件事搞混了


编辑-请参阅谷歌的这篇文章。对状态参数和建立web请求有很好的解释。

啊,你是对的。也许应该早点睡觉!谢谢,请看我对谢谢的回答!