slo_nik
@slo_nik

Вернуть ответ сервера в xml, что использовать?

Доброй ночи.
Подскажите, как правильно решить задачу?
Есть таблица в БД, где хранятся данные о перелётах.
Нужно сделать что-то вроде api для сайта.
Пользователь должен отправить на сайт get запрос в виде такой строки:
http://example.ru/api/search?from=MOW&to=LED&date1=2012-09-25&date2=2012-10-01&adults=2&children=1&infants=1&cabin=Y&partner=avsl&password=pass

В get параметрах передаётся города вылета/прилёта, даты вылета/прилёта, количество пассажиров, класс(эконом,бизнес),код перевозчика и пароль. В ответ должен получить данные в xml формате + к этим данным ссылку, которая будет вести на форму подачи заказа билетов.
Читаю статьи второй день и не могу определиться, что использовать для реализации данной задачи на YII2?
RESTful api или просто класс yii2 yii\web\Response.
Авторизация и проверка прав доступа мне не нужна, данные общедоступные.
Нужны всего два действия:
1) Вернуть результат поиска
2) Выдать форму для подачи заказа

Сейчас я реализовал это при помощи yii\web\Response, но мне интересно, правильный это подход или нет?
Что посоветуете?
  • Вопрос задан
  • 599 просмотров
Решения вопроса 1
qonand
@qonand
Software Engineer
нужно понимать что RestApi это не просто запрос get-ом и ответ в формате xml/json, это определенная спецификация по структуре Api. Задайте себе вопрос - Ваш сайт должен поддерживать эту спецификацию? если да - реализовывайте RestApi на базе инструментов Yii, если нет - работайте с Response.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@melnikov_m
Можно обновиться до yii 2.0.11. В контроллер добавлены два метода: asJson() и asXml(). Служат они для отдачи данных в формате JSON и XML соответственно.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы