What's the difference between REST & RESTful

What's the difference between a REST system and a system that is RESTful?

From a few things I've read most so called REST services are actually RESTful services. So what is the difference between the two.


Representational state transfer (REST) is a style of software architecture. As described in a dissertation by Roy Fielding, REST is an "architectural style" that basically exploits the existing technology and protocols of the Web.

RESTful is typically used to refer to web services implementing such an architecture.


"REST" is an architectural paradigm. "RESTful" describes using that paradigm.


REST based Services/Architecture VC RESTFUL Services/Architecture

To differentiate or compare these 2, you should know what is REST. REST (REpresentational State Transfer) is basically an architectural style of development having some principles...

  • It should be stateless

  • It should access all the resources from the server using only URI

  • It does not have inbuilt encryption

  • It does not have session

  • It uses one and only one protocol that is HTTP

  • For performing CRUD operations, it should use HTTP verbs such as get, post, put and delete

  • It should return the result only in the form of JSON or XML, atom, OData etc. (lightweight data )

  • REST based services follow some of the above principles and not all, whereas RESTFUL means it follows all the above principles.

    It is similar to the concept of Object-based languages (Its support all the OOPS concepts, example are C++, C#) and Object oriented languages (It supports some of the OOPs features, such as JavaScript, VB). Examples are ASP Dot NET MVC 4 is 'REST-Based' and Microsoft WEB API are 'RESTFul'. MVC supports only some of the above REST principles whereas WEB API supports all the above REST Principles.

    MVC only supports the following from the REST API

  • We can access the resource using URI

  • It supports the HTTP verb to access the resource from server

  • It can return the results in the form of JSON, XML, that is the HTTPResponse.

  • But at the same time in WEB API

  • We can use the session

  • We can make it stateful

  • We can return video or image from the controller action method which basically violates the REST principles

  • That is why MVC is REST-Based whereas WEB API supports all the above principles and is RESTFul.

    链接地址: http://www.djcxy.com/p/12314.html

    上一篇: WCF和ASMX Web服务有什么区别?

    下一篇: REST和RESTful有什么区别?