Обработка сообщений об ошибках - PullRequest
0 голосов
/ 28 июля 2010

Недавно мне пришлось стандартизировать связь между клиентом и сервером в многофункциональном веб-приложении, состоящем в основном из виджетов. Ответы клиенту в формате json. Когда пришло время принять решение об обработке сообщений об ошибках, возникли две идеи.

  1. Отправить часть сообщения об ошибке ответ, такой как

    { "успех": "ложная", "ошибка": [ "field1": "message1", "field2": "message2"]}

  2. Отправьте ошибки в виде заголовка и просто верните false клиенту

response.addHeader ( 'X-приложения-ошибки', '[ "поле1": "message1", "поле2": "message2"]')

Второй вариант выглядит аккуратным; пользователь проверяет наличие ошибок в заголовках только тогда, когда он этого хочет, и таким образом ошибки кажутся частью протокола, а не частью ответа.

Это хорошая практика? Один способ лучше другого.

1 Ответ

2 голосов
/ 28 июля 2010

Я бы отправил сообщения об ошибках как часть ответа.

Добавление пользовательских заголовков - это то, что вам нужно сделать, если вы хотите сообщать о вещах на уровне протокола HTTP; HTTP уже установил методы сообщения об ошибках (через коды состояния HTTP). Я бы оставил в теле ответа все, что будет показано клиенту (или использовано Javascript).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...