[英]Is play! Framework 2.0 suitable for creating a REST API?
我使用Play開發了一個REST API! 框架1.2.4,我對框架非常不滿意。 簡單性和快速的開發周期幫助我實現了這一目標,只需花費我傳統Java EE路線的一小部分時間。
現在我正在使用Play進行探索! 2.0.3用於我的下一個項目。 我看到雖然框架已得到增強,並且使開發Web應用程序變得更加容易,但關於REST API的情況也是如此 。 我的應用程序將不會有任何HTML - 我將僅使用XML或JSON或我將來決定使用的任何數據交換格式進行響應。
所以,問題是:
有沒有人在這里使用Play 2.0.x來暴露非HTML純REST API?
以下是我認為與1.2.x相比,在Play 2.0.x中開發純REST API更困難的一些因素。 如果我錯了,請糾正我的理解。
在玩! 1.2.4,我內容協商是建立在框架之上的。 有一些選項可以在路徑文件中定義請求所期望的內容類型。
GET /friends User.listFriends(format:'xml')
然后,在控制器中,
public static void getFriends(){
render();
}
這將導致自動呈現views/xml/User/listFriends.xml
模板。 要明天添加對JSON的支持,我需要做的就是添加views/json/User/listFriends.json
模板。
我不知道如何在游戲中做到這一點! 2.0.x版本
經過一些反復試驗,我發現可以在play文件夾中創建一個listFriends.scala.xml! 2.0。 然后,需要在控制器代碼中調用它,如下所示:
return ok(views.xml.listFriends.render())
;
但是,Eclipse不喜歡這樣,因為Eclipse不知道views.xml.listFriends
因為它僅在播放編譯完成后生成。 這里有什么我想念的嗎?
在Play(Scala)中,您可以執行以下操作:
val myXMl = obtainXML();
return Ok(myXML).as("text/xml")
我不確定Java中的語法,但它是等價的:不是創建模板,而是生成XML然后將其發送給用戶,將返回類型設置為“text / xml”(或json或無論你需要它是什么)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.