AdonisJS: Простое API с валидацией полей
В этой заметке я хочу поделится простым советои быстрого запуска вашего проекта на AdonisJS. Я покажу как создать роут API с простой валидацией.
Установка
Прежде всего, давайте установим AdonisJS. Откройте терминал и выполните следующую команду:
npm install -g @adonisjs/cli
Это установит глобально на вашей машине AdonisJS CLI, чтобы вы могли использовать его для создания новых проектов AdonisJS и запуска команд.
Затем создадим новый проект AdonisJS. Выполните следующую команду:
adonis new simple-api && cd simple-api
Это создаст новый проект AdonisJS в директории с именем simple-api.
Создание маршрута
Теперь давайте создадим маршрут с простой валидацией. Откройте файл start/routes.js в вашем редакторе кода и добавьте следующий код:
const Route = use('Route')
const { validate } = use('Validator')
Route.post('/users', async ({ request, response }) => {
const validationRules = {
username: 'required|unique:users,username',
email: 'required|email|unique:users,email',
password: 'required|min:8'
}
const validation = await validate(request.all(), validationRules)
if (validation.fails()) {
return response.badRequest(validation.messages())
}
const user = await User.create(request.all())
return response.created(user)
})
Давайте разберем, что делает этот код. Сначала мы импортируем модули Route и Validator. Затем мы определяем маршрут POST по адресу /users
. Этот маршрут ожидает три параметра: username, email и password.
Мы определяем правила валидации для этих параметров с помощью функции validate из модуля Validator. Правила такие:
username
: Обязательно и должно быть уникальным в таблице users.
email
: Обязательно, должно быть действительным адресом электронной почты и должно быть уникальным в таблице users.
password
: Обязательно и должно иметь минимальную длину 8 символов.
Затем мы используем функцию validate для проверки входящего запроса на соответствие этим правилам. Если проверка не проходит, мы возвращаем ответ с кодом 400 Bad Request и сообщениями об ошибках валидации. Если проверка проходит, мы создаем нового пользователя и возвращаем ответ с кодом 201 Created и только что созданным пользователем.
Запуск приложения
Теперь давайте запустим приложение в режиме разработки и с отслеживанием изменений в коде. Запускаем команду:
node ace serve --watch
Если вы хотите протестировать свое приложение, я предлагаю использовать Postman. Это инструмент для тестирования API, который позволяет создавать запросы и просматривать ответы в простом интерфейсе.
Вы создали маршрут с простой валидацией в AdonisJS. Теперь вы можете протестировать свой маршрут, отправив POST-запрос на /users с необходимыми параметрами. Если параметры проходят проверку валидации, будет создан новый пользователь в ответ вы получите json обьект с данными пользователя.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарий ниже. Счастливого кодинга! 🤗