Have you ever wandered why HTTP and REST are so similar? Although officially REST was published after HTTP/1.1 it is not directly based on HTTP. So what’s going on? I think the best answer could only give us an author of REST, Roy T. Fielding.
Over eight years ago there was a discussion about REST on Yahoo groups. Luckily Roy Fielding also participated. He wrote quite a detailed story about the origination of HTTP/1.1 and REST, which can be found here. In short, while HTTP standardization process he developed a core set of principles, properties, and constraints. A part of them was applied to HTTP/1.1. Nevertheless HTTP/1.1 was finished before all those core ideas, which are now known as REST, were defined as an entire model. I think that connection between HTTP/1.1 and REST is best described in this sentence:
HTTP as we know it today is just as dependent on the conceptual notion of REST as the definition of REST is dependent on what I wanted HTTP to be today.Roy T. Fielding
At the end Fielding asks a rhetorical question, would HTTP be RESTful if he hadn’t been involved in creating its specification. He adds that he “still remembers people saying publicly that any serious standardization of the Web should be based on IIOP, not HTTP”. After those words I believe that as a web developers we have a tremendous debt of gratitude for Roy Fielding and his work. Thank you sir!