7 ms·
This is an HTTP API, not a REST API. http://roy.gbiv.com/untangled/2008/rest-apis-must-be-hypertext-driven http://roy.gbiv.com/untangled/2008/rest-apis-must-be
by KevBurnsJr 15y ago
This is an HTTP API, not a REST API.
http://roy.gbiv.com/untangled/2008/rest-apis-must-be-hypertext-driven http://roy.gbiv.com/untangled/2008/rest-apis-must-be-hyperte...
- jethroalias97 15y ago“When I use a word,” Humpty Dumpty said, in rather a scornful tone, “it means just what I choose it to mean—neither more nor less.”
- stanleydrew 15y agoAre you saying Roy Fielding is like Humpty Dumpty? If so this doesn't appear to be a very useful or enlightening comment.
- deleted 15y ago[deleted]
- jethroalias97 15y agoI'm saying if I wrote a "REST API" and everyone understood what that means, what would it matter whether or not it checks every box laid out by the originator of the term.
- generalk 15y agoThat makes it an effective form of communication, but not correct. If I talk to someone who's not computer-savvy and they describe a workflow as "I put the USB in the CPU and then drag all my files onto my screen" (verbatim quote) I can figure out what they mean and work with them, but they clearly don't understand the concepts.
- jethroalias97 15y agoIn my experience, "correct" is often subjective.
- kevinpet 15y agoYour comment contradicts current linguistics. There is no "correct" separate from usefulness in communication. If someone wants to write a REST RFC, and people can talk about "RFC-6789 Compliant REST API" then correctness would reenter the picture.
- KevBurnsJr 15y ago"There is no "correct" separate from usefulness in communication." I think you may have misunderstood your source. Subjective truth is only half of the equation. The other half is testing rational models against experience. If you understand the constraints of REST, you understand that it has implications not met by the API in question and thus claims to be something which it clearly is not. Just because I tell you I'm a duck doesn't mean I'm a duck.
- ap22213 15y agoI think Roy Fielding and the other strict REST proponents need to do a better job of explaining why we laymen should follow the rules so closely. I have read a lot of Roy's work, and those of other proponents', and I still don't see a lot of value in staying so strictly to the 'word' of REST. Much could be helped by 'the experts' just showing us rational laymen the cost-benefit analysis. Show me how things will fall apart over time, some data would be helpful. And let me see some case studies. Currently, my non-REST "REST" interfaces seem to be working pretty well. And, when they don't work, I go and fix them. Seems easy enough, but obviously I'm naive.
- olefoo 15y agoThe reference is to Alice Through the Looking Glass by Lewis Carrol. It is a sad day when you can no longer expect an educated english speaker to have read the good Reverend's inspired nonsense.
- deleted 15y ago[deleted]
- psadauskas 15y agoFurthering our wanderings down this off-topic thread, I agree with you completely, but every time I point it out, I get accused of being a "pedant". I've implemented several truly restful APIs, and they've always worked beautifully, but they're internal or private. I tell others about it, and the immense advantages, but they see every other HTTP-RPC API out there and copy that instead. Why is it that there's no examples of a truly restful web service in practice? The only one I can think of offhand is Sun Cloud's API, which is pretty dead. Its hard to espouse the virtues of a truly restful API when there aren't any examples to point at. Edit: The downvotes would seem to just further my point...
- generalk 15y agoIf you say you've written some very RESTful APIs internally, perhaps writing an article about the things you've specifically done from most APIs that makes yours RESTful and advantageous vs. a less RESTful API.
- psadauskas 15y agoI do, periodically. The last one, though, was a couple years ago: https://news.ycombinator.com/item?id=713959 https://news.ycombinator.com/item?id=713959 Be sure to read the first comment. I've sorta given up blogging about it, because I'm tired of fighting it. I am working on a side project, though, which exposes an actual Restful API, so maybe once I can use it as an example, I'll be able to blog more.
- mechanical_fish 15y agoThanks for writing that post. Very clear and informative.
- pstuart 15y agoI upvoted you. I would like to learn how to do REST "right", and (for me) it's easier to learn by playing with a working example that deals with "real world" issues as opposed to abstract snippets that only show how APIs get used. Any further insights/examples/pointers would be greatly appreciated.
- kevinpet 15y agoThat's a valid criticism of APIs that think "it's not SOAP, so it must be REST", but this is close enough to REST that it seems pedantry to claim it isn't. So all apologies to Roy Fielding, but through success, he has lost control of his terminology. This is what people mean by REST today.
- loup-vaillant 15y agoThat reminds me of what happened to "Object Oriented". First, Alan Kay coined the term, having something like Smaltalk in head (emphasis on messages, and a strong dislike of unchecked side effects like setters and the assignment statement). Then the term was subverted, and we got C++ and Java (emphasis on classes, and a near-total disregard for the problems of pervasive side effects[1]). My point is, we should be careful before we corrupt a term. Doing so corrupts our perception of the concept itself. And if it turns out the corrupt concept is less help than the pure one, too late : it's already popular. [1]: That assignment thing really sucks: http://www.loup-vaillant.fr/articles/assignment http://www.loup-vaillant.fr/articles/assignment
- KevBurnsJr 15y agoYour argument appears to be unconcerned with truth, wisdom or understanding.
- dm3 15y agoThe following classification helped me resolve more than one REST terminology related conflict. Hope it'll be useful: http://www.nordsc.com/ext/classification_of_http_based_apis.html http://www.nordsc.com/ext/classification_of_http_based_apis.....