什么是REST

原文:http://sd.csdn.net/a/20110602/299167.html

 

导读:本文是从《What is REST?》这篇文章翻译而来,译文来自外刊IT评论《什么是REST?》。内容如下:

让我来给你们做一个非常简单的,适用的解释。

REST是一套用来创建Web Service的方法。

REST式的Web Service的主旨是让事情尽量的简单化

REST式的Web Service使用HTTP里的方法:GET,POST,DELETE,PUT。你不需要使用URL或请求的内容来指定这个方法。

REST式的Web Service使用URL来指明你将要操作什么对象。

REST式的Web Service使用HTTP状态码作为返回值

REST式的Web Service调用产生的HTTP请求内容只是用于服务数据——不是用来指明调用方法,目标对象或返回值的。

使用REST方法来开发Web Service的关键点是利用HTTP协议的简单性,而不是去扩展这个协议。你的Web Service调用最终应该是非常的简单而且非常的易于理解。

下面是一个调用REST式的Web Service的例子。用的是一个Javascript函数,它从Web Service里取回一个任务对象。

function sendGetTaskRequest(packet, template, task, handler) { // 这一行创建一个Web请求 requestGetTask = new XMLHttpRequest(); // 这一行指明请求的HTTP方法和URL。 // 注意这个URL是一个简单的对象的路径。 requestGetTask.open(“GET”, baseUrl + “/v1/packets/” + packet + “/templates/” + template + “/tasks/” + task); // 这一行调用一个方法来处理响应的数据 requestGetTask.onreadystatechange = handler; // 这一行用来发送请求 requestGetTask.send(); }  

为了获取一个任务,你只要对这个任务的URL发送一个GET请求。为了添加一个任务,你只需要向这个任务的URL发送一个POST请求。REST使Web Service用起来非常的简单。

如果你想找一本真正有用的用来学习REST的书,我推荐Leonard Richardson和Sam Ruby合著的《RESTful Web Services(中文版)》 。

 

你可能感兴趣的:(技术,service,rest,xmlhttprequest,web,任务,url)