如何更改ClientCredentialsResourceDetails将发出的请求的内容类型?

时间:2017-02-15 09:04:55

标签: java spring-security oauth oauth-2.0 spring-security-oauth2

现在,我正在尝试更改 ClientCredentialsResourceDetails 将引发的请求的content-type org.springframework.security.oauth2.client.token.grant.client.ClientCredentialsResourceDetails

预期内容类型: - 表单/数据 multipart / form-data

但是现在我只能看到/做这个,

ClientCredentialsResourceDetails resourceDetails = new ClientCredentialsResourceDetails();
resourceDetails.setClientAuthenticationScheme(AuthenticationScheme.header);

此代码只允许我通过以下content-type

传递数据
content-type : application/x-www-form-urlencoded

所以,我想改变它。

任何人都可以给我一个想法吗?怎么做?

任何帮助欣赏...... !!!

1 个答案:

答案 0 :(得分:1)

客户端凭据流在RFC 6749中定义,“4.4. Client Credentials Grant”和“4.4.2. Access Token Request”如下所示。

  

客户端通过使用附录B中的“application / x-www-form-urlencoded”格式添加以下参数来向令牌端点发出请求,其中字符编码为UTF-8 in HTTP请求entity-body:

因此,期望Spring Security和其他OAuth客户端库提供使用客户端凭据流将令牌请求的Content-Type更改为“application / x-www-for-urlencoded”之外的任何其他值的方法是没有希望的。