Oauth OIDC响应模式=表单发布

Oauth OIDC响应模式=表单发布,oauth,openid-connect,implicit,form-post,Oauth,Openid Connect,Implicit,Form Post,我正在实现response_mode=form_post,我想知道这种模式可能的response_类型 我在一些地方读到它支持response\u type=code,response\u type=id\u令牌。 (仅限登录案例)。返回access\u token时,使用类型id\u token token,我们可以使用form\u post吗?response\u模式控制令牌如何传递到客户端,如果使用response\u mode=form\u post,则通过身份提供者生成的自动提交的fo

我正在实现response_mode=form_post,我想知道这种模式可能的response_类型

我在一些地方读到它支持response\u type=code,response\u type=id\u令牌。
(仅限登录案例)。返回access\u token时,使用类型id\u token token,我们可以使用form\u post吗?

response\u模式控制令牌如何传递到客户端,如果使用response\u mode=form\u post,则通过身份提供者生成的自动提交的form post完成。如果不提供,您将通过查询字符串获得令牌。 据我所知,再也没有变数了

基本上,response_模式定义了如何将令牌(ID/Access/refresh)传递给客户机

根据规范:

它说:

本规范定义了Form Post Response Mode(表单后响应模式),该模式用其Response_Mode(响应模式)参数值描述:

在此模式下,授权响应参数编码为HTML 在用户代理中自动提交的表单值,因此 通过HTTP POST方法传输到客户端,结果如下 使用 application/x-www-form-urlencoded格式。属性的action属性 表单必须是客户端的重定向URI。形式的方法 属性必须是POST。因为授权响应是预期的 要仅使用一次,授权服务器必须指示用户 代理(及任何中介机构)不得存储或重复使用 回应

用户代理支持的任何技术均可用于导致 提交表格,以及支持此要求所需的任何表格内容 可能包括,例如提交控件和客户端脚本 命令。但是,客户端必须能够处理消息 不考虑提交表格的机制 发起


您可以在
表单发布
响应模式中使用任何响应类型。定义了应与给定响应类型一起使用的默认响应模式,但
form_post
规范并未将其使用限制为仅在某些
响应类型
情况下使用


不过,这对您的实现不会有任何影响。您应该只使用授权服务器返回的表单并提交它,就像您在页面上提交任何其他HTML表单一样。因此,表单中的内容对您来说并不重要,动作URL无论如何都应该在表单中。

您也可以在URL的片段部分获得令牌。感谢您的澄清。