java – 玩! Framework 2.0适合创建REST API?
我已经使用Play开发了一个REST API!框架1.2.4,我非常喜欢框架.简单和快速的开发周期帮助我实现了这一点,只要我走了传统的
Java EE路由,我会花费很少的时间.
现在我正在探索使用Play! 2.0.3为我的下一个项目.我看到,虽然框架已经被增强,并且使得开发Web应用程序变得更加容易,但REST API也不能说这一点.我的应用程序将不会有任何HTML – 我将只使用XML或JSON或我将来决定使用的任何数据交换格式进行响应. 所以问题是:
更多细节: 以下是我觉得在Play 2.0.x中与1.2.x相比开发纯REST API更为困难的一些因素.如果我错了,请更正我的理解. 内容谈判更加困难 在玩! 1.2.4,内容谈判是建立在框架之内的.有一些选项可以在路由文件中定义请求期望的内容类型. GET / friends User.listFriends(format:’xml’) 然后,在控制器中, public static void getFriends(){ render(); } 这将导致视图/ xml / User / listFriends.xml模板自动呈现.为了明天添加对JSON的支持,我需要做的就是添加一个views / json / User / listFriends.json模板. 我看不到这样做可以在玩! 2.0.x版本 创建非html模板不太直观 经过一些试验和错误,我发现可以创建一个listFriends.scala.xml中的一个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或无论你需要什么) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |