Я использую OAuth2 gem для аутентификации client_credential.Мой код, как показано ниже,
require 'oauth2'
client = OAuth2::Client.new("my_client_id", "my_client_secret", :site => "my_site_url", :token_url => "oauth2/token")
client.client_credentials.get_token
Когда я выполняю вышеуказанный блок кода, он отвечает с ошибкой ниже,
OAuth2::Error (invalid_client: Client authentication failed (e.g., unknown client, no client authentication included, or unsupported authentication method))
{
"error":"invalid_client","error_description":"Client authentication failed (e.g., unknown client, no client authentication included, or unsupported authentication method)",
"error_hint":"The OAuth 2.0 Client supports client authentication method "client_secret_basic", but method "client_secret_post" was requested.
You must configure the OAuth 2.0 client's "token_endpoint_auth_method" value to accept "client_secret_post".","status_code":401}
Я проверил использование библиотеки 'net / http', и мойclient_id
& client_secrets
действительны и работают.
Единственная проблема, которую я вижу, заключается в способе аутентификации, как сказано в подсказке вышеупомянутого сообщения,
The OAuth 2.0 Client supports client authentication method "client_secret_basic", but method "client_secret_post" was requested. You must configure the OAuth 2.0 client's "token_endpoint_auth_method" value to accept "client_secret_post"
Что я хочу знатьявляется?
- Как
OAuth2
gem решает использовать client_secret_post против client_secret_basic?Я имею в виду Как я могу запросить с client_secret_basic в геме OAuth2? - Если не выше, то как мне указать token_endpoint_auth_method для приема client_secret_post?