Как использовать игру! рамки для развития webservice?
Как использовать игру для разработки webservice?
Я не могу найти какие-либо документы на официальном сайте.
Ответ 1
Довольно просто.
Play поставляется с рядом методов, которые вы можете использовать для раскрытия своих действий в качестве веб-служб.
Например
render()
renderJSON()
renderXML()
Все они могут использоваться для рендеринга данных определенным образом.
Если у вас есть веб-служба, позвольте предположить веб-сервис RESTful, что вы хотите вернуть сумму двух чисел, вы можете сделать это следующим образом.
public class Application extends Controller {
public static void sum(Float num1, Float num2) {
Float result = num1 * num2;
render(result);
}
}
если ваш маршрут настроен на использование XML в качестве формата или формат задан правильно в заголовке запроса, вы возвращаете результат с помощью обычного шаблона groovy с именем app/views/Application/sum.xml
Чтобы правильно настроить маршрут для форматирования, добавьте следующую строку в свой route файл
GET /webservices/sum Application.sum(format:'xml')
Сумма .xml будет выглядеть примерно так:
<response>
<sum>${result}</sum>
</response>
Эта же концепция работает для JSON.
Если вы не хотите использовать шаблоны groovy, вы можете просто создать XML или JSON с помощью методов renderJSON/renderXML, но это означает, что вы создаете логику представления в свой контроллер, что это плохая практика.
В качестве субномии, если вы хотите использовать web-сервисы, вы используете класс play.libs.WS. Я написал блог о том, как это сделать