2016-08-19 2 views
1

다음 시나리오에서 클라이언트에게 가장 적합한 응답 메시지는 무엇입니까?Rest API 유효성 검사/오류 메시지 유용한 정보

엔드 포인트가/users이고 클라이언트가 사용자의 일부 특성을 업데이트하기 위해 PUT을 작성할 수 있다고 가정 해보십시오.

클라이언트가 업데이트 할 수있는 일부 사용자 속성이지만 다른 사용자는 업데이트 할 수 없습니다. 예를 들어 클라이언트는 name 및 birthDate를 업데이트 할 수 있지만 코드 및 registerDate는 업데이트 할 수 없습니다.

클라이언트가 허용되지 않는 속성을 업데이트하려고하면 클라이언트에 가장 적합한 응답 메시지는 무엇입니까?

RESPONSE 1

400 잘못된 요청

{ 
    “err”: “You can’t update the properites: code and registerDate.” 
} 

RESPONSE 2

400 잘못된 요청이 I respon 말아야

{ 
    “err”: “You can update only the properties: name and birthDate.” 
} 

, 그가 업데이트하려고 시도하지만 업데이트 할 수없는 속성이나 응답 만 할 수있는 속성은 무엇입니까?

또한 API에서 반환 할 수있는 오류 및 유효성 검사 메시지를 올바르게 알리는 방법에 대한 자세한 내용을 보려면 어떻게해야합니까? 어떤 지침이나 책이 있습니까? http://www.vinaysahni.com/best-practices-for-a-pragmatic-restful-api 질문에 대해서는

, 그것은 개발자로 기본 설정에 대해 정말 :

+0

403을 사용할 수 있습니다. 금지 : 요청이 유효하지만 해당 작업이 금지되어 있습니다. https://en.wikipedia.org/wiki/List_of_HTTP_status_codes – Idali

+0

안녕하세요, @ 아이디! 하지만 메시지는? 2 개의 메시지는 당신에게 동일한 "정보 효과"를 가지고 있습니까? –

+0

registerDate는 readOnly이므로 업데이트 할 수 없습니다. – Idali

답변

0

여기에 서비스 API의 모범 사례에 대한 꽤 좋은 기사입니다. API를 매우 잘 문서화하는 것이 좋습니다.