우리는 ASP.NET Web API 응용 프로그램에서 OAuthAuthorizationServerProvider
클래스를 사용하여 권한을 부여합니다. 제공된 사용자 이름과 암호가 GrantResourceOwnerCredentials
에 유효하지 않은 경우OAuthAuthorizationServerProvider의 오류 메시지를 사용자 정의하는 방법은 무엇입니까?
,
context.SetError("invalid_grant", "The user name or password is incorrect.");
은 다음 JSON 결과를 생성합니다 호출이 오류의 결과를 사용자 정의 할 수있는 방법이
{
"error": "invalid_grant",
"error_description": "The user name or password is incorrect."
}
거기를?
{
"message": "Some error occurred."
}
이이 OAuthAuthorizationServerProvider
달성하는 것이 가능 :
나는 API의 다른 부분에 사용되는 기본 오류 메시지 형식이 일치하도록 하시겠습니까?
아래의 답변이 작업을 수행하는 방법을 보여줍니다 동안 기본 응답은 OAuth는 2.0 사양을 준수를 반환, 나는,이 일에 대해주의에 반해 수정 된 응답은 않을 것 . 이는 내부 전용 API의 경우 허용 될 수 있습니다. 그러나이 API에 공개적으로 액세스 할 수있는 경우 새 규약을 고안하지 않고 사양을 따르기를 원할 것입니다. – Chris
이러한 답변이 작동하지 않으며 OAuth 응답이 표준 웹 API 응답처럼 보이기 쉽다고 생각하는 것만 큼 쉽지 않은 것으로 나타났습니다. – Sam