无法理解它们
那么,这个标题或多或少都会说。 我有点理解REST是什么 - 使用现有的HTTP过程(POST,GET等)来促进Web服务的创建/使用。 我更加困惑的是什么定义了什么是Web服务,以及REST如何实际用于制作/公开服务。
例如,我读过的Twitter就是RESTful。 这实际上意味着什么? 如何调用HTTP过程? 当我写推文时,REST是如何涉及的,它与简单使用服务器端语言并将该文本数据存储在数据库或文件中有什么不同?
这个概念对我来说也有点模糊,但在看完你的问题之后,我决定为自己澄清一点。
请参考msdn和这个链接。
基本上,它似乎是使用http方法(Get / Post / Delete)来识别应用程序允许的资源暴露。 例如:假设你有网址:
http://Mysite.com/Videos/21
其中21是视频的ID。 我们可以进一步定义这个URL允许使用什么方法 - 用于检索资源的GET,用于更新/创建的POST,用于删除的删除。
通常,它看起来像是一种有组织,干净的方式,通过使用http方法来公开您的应用程序资源及其支持的操作
你可能想从这个优秀的介绍性文章开始。 它从头到尾都涵盖了这一切。
RESTful体系结构提供了一个唯一的URL,它可以单独定义每个资源,并通过HTTP动作推断动词对相同的URL执行相应的操作。
我认为解释它的最好方法是将应用程序中的每个数据模型都视为唯一资源,REST帮助路由请求而不在URL末尾使用查询字符串,例如,而不是/posts/&q=1
,你只需使用posts/1
。
通过示例更容易理解。 这将是Rails强制执行的REST架构,但可以让您了解上下文。
GET /tweets/1
1⇒表示您想要获得ID为1
的推文 GET /tweets/1/edit
⇒表示您想要进入与推文关联的动作编辑,其ID为1
PUT /tweets/1
1⇒PUT表示更新此推文不会获取它 POST /tweets
⇒POST说我有一个新的,将它添加到数据库,我不能给一个ID因为我没有一个,直到我把它保存到数据库 DELETE /tweets/1
1⇒将其从数据库中删除 资源通常嵌套在Twitter中,但它可能是这样的
GET /users/1/jedschneider/1
用户有很多推文; 让用户使用jedschneider
id和它的tweet id 1
实现REST的体系结构对于应用程序来说是独一无二的,有些应用程序默认支持(如Rails)。
链接地址: http://www.djcxy.com/p/12327.html