【问题标题】:Play Framework, RESTful API, and Media TypePlay 框架、RESTful API 和媒体类型
【发布时间】:2013-11-05 12:49:33
【问题描述】:

我正在使用 Play 实现一个 RESTful API……即使我倾向于只支持 JSON,看起来也支持 XML 是一种好习惯。我在 Internet 上阅读了一些关于如何设计一个好的 RESTful API 和理解的媒体类型应该在 URL 中的有趣文章 - 最常用的选项似乎是将 .json.xml 扩展名附加到端点 URL。

现在的问题是:如何在 Play 中实现这一点?我应该像这样为每种格式定义一个路由吗:

GET     /products.json/:id         controllers.Products.show(id: Int, format: String = "json")
GET     /products.xml/:id          controllers.Products.show(id: Int, format: String = "xml")

...或者我应该这样定义:

GET     /products.:format/:id      controllers.Products.show(id: Int, format: String)

就个人而言,我更喜欢在 Accept header... 中指定媒体类型,但看起来不鼓励这样做,或者至少不是最佳做法。

【问题讨论】:

    标签: rest playframework


    【解决方案1】:

    我的印象是,这两种方式都是 REST API 的公认解决方案,所以如果你最喜欢,请使用 Accept 标头!

    【讨论】:

      猜你喜欢
      • 2014-09-11
      • 1970-01-01
      • 2023-03-15
      • 2011-10-19
      • 2016-01-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多