#playframework
#playframework
Вопрос:
Что ж, мне пока нравится играть, и я надеялся рассказать сообществу истории успехов и неудач в попытках разработать отличное приложение REST. У меня большой опыт работы с Django, и я подумал о применении некоторых методологий из http://django-tastypie.readthedocs.org/en/latest/?redir Пакет для создания API для воспроизведения.
Нашли ли вы хороший эквивалент представления моделей через пакет API с гибкими настройками регулирования, внесения в белый список выходных данных, форматирования выходных данных, автоматических маршрутов URL api и так далее?
Ответ №1:
Несколько времени назад была дискуссия о представлении моделей в Play Google Group. Это была довольно придирчивая дискуссия, потому что аудитория была полностью разделена на 2 группы:
— те, кому действительно понравилась бы эта функция, и они хотят ее абсолютно.
— те, кто говорят, что это действительно плохой (даже опасный) способ напрямую отображать вашу модель на уровне представления, потому что это нарушает дизайн MVC и напрямую раскрывает ваши бизнес-данные с потенциальными нарушениями безопасности или целостности данных и т.д…
Я не состою ни в какой группе и просто рассматриваю вопрос объективно…
При взгляде на этот Django API, я думаю, что это не такая уж проблема, если вы можете контролировать, как отображается ваша модель и что именно отображается. Но я не знаю ничего, что делало бы это из коробки в Play !… Я не знаю, заканчивал ли когда-либо свой модуль парень, который начал обсуждение, приведенное здесь ранее… В любом случае, модуль CRUD уже делает что-то подобное, потому что он анализирует поля вашей модели, чтобы предоставить интерфейс CRUD… так что представление его как REST было бы просто вопросом презентации (и некоторой работы), ИМХО.
Комментарии:
1. Вы можете улучшить модуль CRUD с помощью настраиваемого представления, чтобы предоставить REST API для вашей модели. Однако прямое использование модуля CRUD не рекомендуется, потому что: 1. он не обрабатывает непростую модель. 2. он не обеспечивает безопасность.
Ответ №2:
Здесь у вас есть пара модулей, которые могут помочь вам создавать веб-службы rest из play! Приложения
Модуль RESTEasy Play позволяет определять веб-службы JAX-RS RESTful в платформе Play framework с помощью RESTEasy.
и
RESTEasy-модуль воспроизведения CRUD
Модуль RESTEasy-CRUD Play позволяет автоматически генерировать набор веб-сервисов CRUD JAX-RS RESTful в платформе Play Framework с использованием RESTEasy.
Я надеюсь, что это поможет
Комментарии:
1. в качестве комментария первая предоставленная вами ссылка была изменена на link благодаря @opensas
2. Кто-нибудь использовал модуль RESTEasy Play с Play 2.x?