최근에는 주로 위젯으로 구성된 리치 웹 응용 프로그램에서 클라이언트와 서버 간의 통신을 표준화해야했습니다. 클라이언트에 대한 응답은 json 형식입니다. 오류 메시지 처리에 관해 결정할 때가되었을 때 두 가지 아이디어가 나타났습니다.오류 메시지 처리
의 같은
{ "성공"응답을 오류 메시지 부분을 보내기 : "거짓", "오류": [ "필드 1": "message1를", "FIELD2을": "message2를 "]}
가 헤더로 오류를 보내 단순히 (클라이언트에 'X-응용 프로그램 오류'
response.addHeader을 false를 반환 '["필드 1 ":"message1 "," field2 ":"message2 "] ')
두 번째 옵션은 깔끔한 것 같습니다. 사용자는 원할 때 헤더의 오류 만 검사합니다. 오류는 응답의 일부가 아닌 프로토콜의 일부분 인 것처럼 보입니다.
좋은 방법입니까? 편도가 다른 편보다 낫다.
+1 동의합니다. 또한 오류 메시지를 클라이언트에 반환하는 경우 클라이언트 언어로되어 있어야하고 시스템에 대한 중요한 정보 (예 : DB 연결 문자열)가 표시되어서는 안됩니다. 단지 호출 코드가 자신의 것으로 간주되기 때문에 그것은 항상있을 것입니다. –
Ooops - "클라이언트 언어로"는 분명히 최종 사용자에게 보여지는 메시지에 적용됩니다. 하지만이 아이디어는 다른 레이어/시스템간에 오류 정보를 교환하는 데에도 적용됩니다. –