我怎么知道我在使用REST?

时间:2010-11-15 13:15:36

标签: web-services rest terminology

REST看起来如此简单,以至于我得到了一个什么是REST的问题。它看起来就像我使用的任何GET URL。 我怎么知道我在使用REST? 简单URL之间有什么区别:“http://en.wikipedia.org/wiki/Representational_State_Transfer”  和另一个REST服务URL。是URL(hhttp://en.wikipedia.org/wiki/Representational_State_Transfer)如果返回JSON / XML那么它是REST,否则它是一个网页!

换句话说: 给定一个URL,我如何识别我正在访问REST服务URL或只是一个网页。它只是返回类型不同。如果返回类型是XML / JSON则REST则是简单的网页!

3 个答案:

答案 0 :(得分:3)

无法从网址告知您正在访问 REST 服务与其他任何内容。

鉴于REST是一种架构风格,而不是特定的技术,没有特定的位模式或给定的标记,你应该寻找。

从您的示例中,您甚至无法判断它是否返回JSON与HTML或其他类似的内容,因为在这种情况下,很可能服务器正在响应您的Accept:字符串而不是基于以下方式随机选择一个或另一个URL(虽然任何特定的服务器都可以响应任何特定的URL,但是可能有服务器以这种方式确定它。)

答案 1 :(得分:1)

查看Roy Fielding撰写的REST APIs must be hypertext-driven文章。他在他的“现代Web架构的原理设计”中定义了REST。

答案 2 :(得分:0)

给定一个URL,如果

,则遵循REST架构风格

a)您不知道将从该URL返回什么媒体类型,而是您作为客户端使用accept标头指示您支持的媒体类型,并根据返回的媒体类型做出反应< / p>

b)您采取的唯一操作是基于返回的响应中嵌入的信息。即您只关注返回的回复中的链接。