Формат протокола общения клиента с сервером
Клиентская библиотека ожидает от сервера ответ в следующем формате:
{
command_name_1 : "params",
command_name_2 : "params"
}
Для отображения ошибок валидации, необходимо послать клиенту следующий ответ:
{
validation_errors: {
form_field_1: ["текст ошибки №1", "текст ошибки №2"],
form_field_2: ["текст ошибки №1", "текст ошибки №2", "текст ошибки №2"]
}
}
Обработка команд с сервера на клиенте
Изначально библиотека поддерживает следующие команды, которые можно отправлять ей с сервера:
команда | Описание | Параметры |
---|---|---|
validation_errors |
Вывести ошибки валидации | Объект, где ключи - названия полей, значения - массивы с ошибками. Либо просто строка, тогда она будет выведена рядом с кнопкной отправки формы |
redirect |
Произвести редирект пользователя на другую страницу | URL страницы |
refresh |
Обновить текущую страницу | Нет |
nothing |
Ничего не делать | Нет |
success |
Вывести сообщение об успехе | { title: 'Заголовок', text: 'Текст сообщения' } |
warning |
Вывести сообщение об опасности | { title: 'Заголовок', text: 'Текст сообщения' } |
info |
Вывести информативное сообщение | { title: 'Заголовок', text: 'Текст сообщения' } |
error |
Вывести сообщение об ошибке | { title: 'Заголовок', text: 'Текст сообщения' } |
Для команд success
, warning
, info
и error
действительно следующее: если к вашему сайту будет подключён плагин SweetAlert, то он будет задействован при их выполнении.
Собственные команды
Вы можете легко добавить свои собственные команды, чтобы выполнять их в браузере тогда, когда сервер вернёт ваш команду.
Пример добавления собственного обработчика события:
PrettyForms.Commands.registerHandler('command_name', function (data) {
// делаем здесь всё, что хочем.
// data - это объект с данными, которые отправил нам сервер
});