Sam and I are still disconnected, but we appear to have narrowed it done to this one key point. Must .. find .. way …. to explain.
Time for an example.
POST /some-uri/ HTTP/1.1 Host: example.org Content-Type: text/plain [blank line] 795
This is a client POSTing the data “795” to http://example.org/some-uri/. I consider this more hormone-like, because what the code bound to that URI does with the number “795”, is completely up to it. And without additional information, the sender of that HTTP message has no idea what to expect will happen when he does. How this works in HTTP, is that the client (in HTML’s case, a user) forms an expectation by believing the assertions in the HTML that they previously got, that if you submit some text, we’ll send it to an LED flasher in our office (or will dial a phone number, or hunt down and kill the person with that SIN, or whatever). So different behaviours are negotiated out of band, not requested in band.
That should hopefully highlight the difference. Does it? It wasn’t intended to compare the approaches. I’ll leave that as an exercise to the reader. 8-)