Lists Home |
Date Index |
On Monday 21 January 2002 09:56 pm, Miles Sabin wrote:
> Disconnected operation (whether deliberate or accidental) and
> endpoint mobility are the tricky cases. It can be done, but it's not
> pretty. Other protocols (or hybrids, HTTP+SMTP to name only the most
> obvious example) do a better job.
In HTTP as-is you can use PUT/POST and GET to coordinate discontinuous
operations. I PUT/POST a request into your URI-space, and you PUT/POST
the response, at some point down the road. I think I proposed
something similar for file-upload a long time ago too: I PUT/POST the
information about the file, and the server would come and GET it from
my HTTP server. GET could be augmented with return codes and headers
to indicate a "delayed" reponse (not necessary really, just
The issue here is not one of coordination, so much as one of security.
It requires a bit more work to make the above generally secure. For
example, if I do a delayed GET, your server will need to know how to
PUT onto my machine. Ideally, that would be possible only in the
context of the given request, and you'd not be able to spoof me later.
My biggest gripe with the WWW as an application framework is that it
is essentially a global namespace (kind of like having only global
variables). We need to be able to scope requests to a given
application context, and likewise scope computing resources so that
they're only discoverable in that context. Once we get that, we open
the path for really trusted distributed applications.