Я пытаюсь выполнить проверку учетных данных клиента (id и secret) на стороне сервера.Конечная точка, которую я использую, является внешним API и требует обоих значений, и если любое из них является неправильным, выдается 401
вместе с объектом ошибки, который имеет вид:
{
"error": "...",
"error_description": "..."
}
К сожалениюЕсли любое из значений неверно, вместо того, чтобы получить постоянный ключ, который я могу использовать, я получаю только сообщение в виде строки.Например, неверный client_id
приведет к:
{
"error": "invalid_client",
"error_description": "Invalid value for 'client_id' parameter."
}
Недопустимым client_secret
также будет 401
с invalid_client
, установленным в качестве error
, и сообщением об ошибке, содержащим: "The client secret supplied for a confidential client is invalid."
.
Мне было любопытно, что было бы наиболее элегантным решением для определения, какая ошибка произошла.Для тестирования я просто искал слово в описании и отправлял обратно соответствующую ошибку.
Есть еще предложения?Спасибо