[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [dist-obj] HTTP methods explained
Hey everyone, remember me? I've finally emerged from under the rock of
having started a company and devoting all my energy to that. Since
Popular Power folded I've been doing consulting work in peer to peer
and web services. Lots of interesting tech out there, but in the
business climate now it's harder to see where it will go. I'm now
looking for a proper full-time job for myself.
Mark Baker, HTTP acolyte, said:
>I can't believe I didn't think to send this here!
Thanks for writing it, Mark! I've enjoyed the private email we've
exchanged on this topic, and am glad to see your ideas written up so
I really like the idea of trying to do something interesting with
fundamental semantics in HTTP. But I wonder at the normative nature of
what you've written. In the abstract you say:
The documented semantics of HTTP 1.1 methods, in particular POST,
are not well understood, as demonstrated by debates such as whether
IPP should have used POST or a new method, how to properly bind SOAP
to HTTP, and the ever more common use of POST for tunneling new
protocols such as XML-RPC.
Maybe I'm overreacting, but what I read into that statement is that
it's somehow *wrong* for people to use HTTP POST for XML-RPC (or SOAP
calls). That somehow it betrays the One True Nature of HTTP. While I
agree that there is some deep semantics in HTTP that are interesting,
I don't see any need to force the world to go only that way.
Frankly, most of us are just using HTTP as a simple protocol for
sending bits back and forth. In this sloppy usage, GET is like a
function call with no arguments, POST is like a function call with
arguments. I know, I know, it doesn't have to be that way, but people
are building systems that way because it gets the job done well
enough. Does it cause any harm? Is there a compelling need to do
things any other way?
The distinction you're drawing reminds me a bit about the debates
about HTML back in 1996, 1997. Back then HTML was still supposed to be
a structural markup language, not physical layout. There were holy
wars about things like