Web applications 如果有人说他们的web应用程序是RESTful的,你认为它包含哪些类型的功能?

Web applications 如果有人说他们的web应用程序是RESTful的,你认为它包含哪些类型的功能?,web-applications,rest,Web Applications,Rest,我正在读一篇关于一个被描述为RESTful的博客应用程序的文章 如果有人告诉您他们的web应用程序是RESTful的,您会认为它包含哪些类型的功能,以将其与非RESTful web应用程序区分开来?与功能没有多大关系,只是如何访问它们 基本区别在于SOAP是基于动词的,因此您可以使用诸如AddRecord之类的函数。REST是基于名词的,因此您只需将文档的一个版本添加一条附加记录即可。与功能没有多大关系,只与访问功能的方式有关 基本区别在于SOAP是基于动词的,因此您可以使用诸如AddRecor

我正在读一篇关于一个被描述为RESTful的博客应用程序的文章


如果有人告诉您他们的web应用程序是RESTful的,您会认为它包含哪些类型的功能,以将其与非RESTful web应用程序区分开来?

与功能没有多大关系,只是如何访问它们


基本区别在于SOAP是基于动词的,因此您可以使用诸如
AddRecord
之类的函数。REST是基于名词的,因此您只需将文档的一个版本添加一条附加记录即可。

与功能没有多大关系,只与访问功能的方式有关


基本区别在于SOAP是基于动词的,因此您可以使用诸如
AddRecord
之类的函数。REST是基于名词的,因此您只需将文档的一个版本添加一条附加记录。

当谈论网站而不是web服务(我假设您是这样)时,“RESTful”是一个相当弱的术语,因为web从根本上讲是RESTful系统。真正的RESTful网站区别于其他网站的要点包括:

  • 对每个访问控制请求使用HTTP身份验证;应该没有登录页面

  • 仅向所有参与者公开外观相同(如果可访问)的可书签URL;应该没有
    /myaccount
    ,只有
    /account/Chuck

  • 不在隐藏的会话变量中保留任何用户状态,但仅在URL中保留;如果您将好友页面视图从摘要更改为仅标题,则URL中应该会有更改,并且偶尔访问这些URL中的任何一个都应以相应的方式显示页面


除此之外,这主要是一个像所有网站一样的问题:所有页面都可以通过遍历其他页面的链接(包括提交表单)来访问(你永远不必手动咀嚼URL或知道神奇的秘密URL),响应包含描述它们是什么的元数据(HTTP响应中的内容类型),等等。

当谈论一个网站而不是一个web服务(我假设你是这样)时,“RESTful”是一个相当弱的术语,因为web从根本上说是一个RESTful系统。真正的RESTful网站区别于其他网站的要点包括:

  • 对每个访问控制请求使用HTTP身份验证;应该没有登录页面

  • 仅向所有参与者公开外观相同(如果可访问)的可书签URL;应该没有
    /myaccount
    ,只有
    /account/Chuck

  • 不在隐藏的会话变量中保留任何用户状态,但仅在URL中保留;如果您将好友页面视图从摘要更改为仅标题,则URL中应该会有更改,并且偶尔访问这些URL中的任何一个都应以相应的方式显示页面


除此之外,这主要是一个像所有网站一样的问题:所有页面都可以通过遍历其他页面的链接(包括提交表单)来访问(你永远不必手动咀嚼URL或知道神奇的秘密URL),响应包含描述它们是什么的元数据(HTTP响应中的内容类型),等等。

您是否认为,为了实现真正的REST功能,站点不应该使用QueryString,而应该使用类似MVC的东西?从REST的角度来看,web站点和web服务之间确实没有区别。您为网站描述的规则适用于web服务。@Steven QueryString与用于标识资源的路径段一样有效。仅包含路径段的RESTful url的概念是基于过时的URI RFC的误解。@Darrel严格地说,这是真的。但是有很多RESTful特性对于网站来说是理所当然的,但是对于web服务来说却不是,我在这里没有谈到这些。哦,当然,关于查询字符串,你很在行。URL的结构与RESTfulity完全无关,只与它们的语义有关。URL对REST来说是不透明的,但人们普遍误解为URL是不透明的。您是否认为,为了实现真正的REST功能,网站不应该使用QueryString,而应该使用类似MVC的东西?从REST的角度来看,网站和web服务之间真的没有什么区别。您为网站描述的规则适用于web服务。@Steven QueryString与用于标识资源的路径段一样有效。仅包含路径段的RESTful url的概念是基于过时的URI RFC的误解。@Darrel严格地说,这是真的。但是有很多RESTful特性对于网站来说是理所当然的,但是对于web服务来说却不是,我在这里没有谈到这些。哦,当然,关于查询字符串,你很在行。URL的结构与RESTfulity完全无关,只与它们的语义有关。URL对于REST来说是不透明的,但如果不这样认为,这是一个普遍的误解。