HTTP Status Codes for QueryRequestRefused

Hi,

Section 2.1.4 of the Sept 14th WD indicates that QueryRequestRefused

"
...must be returned when a client submits a request that the server is 
unable or unwilling to process, perhaps because of resource consumption 
or other policy considerations. The QueryRequestRefused  fault message 
does not indicate whether the server may or may not process a 
subsequent, identical request or requests.
"

This fault message is currently associated with an HTTP 500 response code.

There may be a variety of reasons that a server may refuse a message, 
some of which are discussed in Section 3 on Policy Considerations: 
resource limitations, and abuse detection.

These are quite different failure modes and it would be useful to be
able to distinguish between them. Without that facility a client cannot
legitimately know whether it can retry its request, or for how long
the server may be unavailable.

This additional feature could be supported by allowing a choice in
response codes:

* 503 Service Unavailable, optionally with a Retry-After header, to
indicate temporary unavailability and an estimated time after which the
request can be retried

* 403 Forbidden to refuse abusive requests and indicate that a retry
is not permissible.

Cheers,

L.

Received on Tuesday, 1 November 2005 20:41:22 UTC