我在Google控制台中创建了一个clientid和clientcredentials。当我使用grant_type=client_credentials
请求令牌时。我得到401 unauthrorized
。
{
"error": "invalid_client",
"error_description": "Unauthorized",
"error_uri": ""
}
答案 0 :(得分:2)
错误表示您未经过身份验证。另外,client_credentials不是我所知道的grant_type的有效值。
我所知道的只有
看起来grant_type=client_credentials
是Oauth2 RFC的一部分,但我认为这不是谷歌认证服务器中实现的。
Anwser :据我所知,您无法将grant_type = client_credentials与Google APis一起使用。
更新:刚收到Google的回复。我是对的他们不支持这个grant_type。
答案 1 :(得分:0)
Google OAuth 2.0不支持“授权类型:客户端凭据(client_credentials
”。 Google仅支持两种OAuth授权:
授予类型客户端凭据用于获取由Client ID
指定的帐户的访问令牌,而不用于用户身份验证。 Google不支持这种类型的访问。
OP还使用了基本授权:base64(Client_ID:Client_Secret)
,并且Google不支持此表单。
有一些OAuth服务器支持这些其他形式,例如IBM的App ID。 Google OAuth 2.0并不是其中之一。