Rest 平静的关切

Rest 平静的关切,rest,resources,Rest,Resources,我对与此类似的RESTful资源有疑问 我们还在开发一个iphone应用程序,可以访问REST服务,但其中一个问题是,第一个屏幕会对该服务进行一些调用,它应该只是一个(资源的dto) 我正在尽可能地让服务保持安静,所以我想知道如何访问它 我考虑将iphone(或任何其他设备)视为一种资源,而dto是一种属性。URI应该是这样的: example.com/rest/Device/iphone/HomeScreen 这样的事情是可以接受的还是有更好的解决方案 谢谢 托尼我想说的是,如果你能把所有你

我对与此类似的RESTful资源有疑问

我们还在开发一个iphone应用程序,可以访问REST服务,但其中一个问题是,第一个屏幕会对该服务进行一些调用,它应该只是一个(资源的dto)

我正在尽可能地让服务保持安静,所以我想知道如何访问它

我考虑将iphone(或任何其他设备)视为一种资源,而dto是一种属性。URI应该是这样的:

example.com/rest/Device/iphone/HomeScreen
这样的事情是可以接受的还是有更好的解决方案

谢谢
托尼

我想说的是,如果你能把所有你想推到电线上的数据汇总起来,并给它起个有意义的名字,那可能比你现在拥有的更好

不管您最终如何调用该结构,我都将其称为“foo”,GET-example.com/rest/foo将返回该结构


我同意限制应用程序的聊天次数很重要,因为你同时拥有应用程序和服务,可能没有其他人会使用你的服务。

iPhone就像一个特殊的客户端,需要以特殊方式格式化输出(比如AJAX有时需要JSON而不是HTML)

因此,我建议尽量缩短url:

example.com/rest/HomeScreen
现在,您必须在控制器中确定所请求的格式(html、json、iphone)。您可以通过确定用户代理或附加以下扩展来完成此操作:

example.com/rest/HomeScreen.iphone
example.com/rest/HomeScreen.html
example.com/rest/HomeScreen.xml

等等。

我不会设计一个主屏幕资源(它感觉非常前端专用)。你在主屏幕上显示什么?我宁愿将显示在主屏幕上的模型作为主屏幕模型本身公开

我们有一个iphone应用程序,它使用RESTAPI调用多个资源(多个调用)。尽管如此,这款应用还是感觉非常快,因为它使用了“性能助推器”(缓存、有效负载大小控制、压缩)


关于内容协商,我认为iphone的互操作格式就足够了(json或xml)。然后,移动设备可以按照自己的喜好呈现此模型。

您所做的一切都是完全可以接受的。当您的资源更加关注客户机UI的需求时,REST原则更容易应用

我做的正是你正在做的事情:

http://myserver.com/desktop/{dataset}/shell
http://myserver.com/shopclient/{dataset}/login
http://myserver.com/mobile/{dataset}/home