Closed mnot closed 3 years ago
julian.reschke@gmx.de commented:
Proposal:
All general-purpose servers MUST support the methods GET and HEAD. All other methods are OPTIONAL; when implemented, a server MUST implement the above methods according to the semantics defined in their relevant specifications (as listed in the HTTP Method Registry maintained by IANA, described in Section 8.1.)
(and then tune the subsequent sentence not to repeat the 8.1 reference)
545.diff
Proposed patch
fielding@gbiv.com commented:
The spec is correct as is. It is not our responsibility to require semantics of unknown or future methods. For example, a method might be defined by a few servers, implemented widely, proposed for standardization, and then specified by many drafts over multiple years. An HTTP server does not become non-conformant to HTTP as those definitions change -- they just don't conform to whatever spec (not HTTP/1.1) defines the new method.
julian.reschke@gmx.de commented:
True, but what I want to avoid is that implementers think that they can implement PATCH in their origin server any way they want. What's the correct spec text to ensure that?
fielding@gbiv.com commented:
The correct spec text would appear in the spec of that method, not the spec of HTTP/1.1.
For example, consider experimental extensions to HTTP that have been deliberately published on the Experimental track instead of the standards track. Your suggested text would imply that those experiments have the same weight as the full standard.
I think what you want is some factual statement that describes the purpose of the method registry. In other words, it could say something about why methods should be registered, preferably in 8.1.2.
fielding@gbiv.com commented:
Hmm, this is actually covered by p1 2.5 Conformance and Error Handling:
A recipient MUST interpret a received protocol element according to the semantics defined for it by this specification, including extensions to this specification, unless the recipient has determined (through experience or configuration) that the sender incorrectly implements what is implied by those semantics.
Perhaps we can just delete the last bit above:
All general-purpose servers MUST support the methods GET and HEAD. All other methods are OPTIONAL.
; when implemented, a server MUST implement the above methods according to the semantics defined for them in Section 4.3.
julian.reschke@gmx.de commented:
Replying to [comment:5 fielding@…]:
Hmm, this is actually covered by p1 2.5 Conformance and Error Handling:
A recipient MUST interpret a received protocol element according to the semantics defined for it by this specification, including extensions to this specification, unless the recipient has determined (through experience or configuration) that the sender incorrectly implements what is implied by those semantics.
Perhaps we can just delete the last bit above:
All general-purpose servers MUST support the methods GET and HEAD. All other methods are OPTIONAL.
; when implemented, a server MUST implement the above methods according to the semantics defined for them in Section 4.3.Sounds good to me.
julian.reschke@gmx.de commented:
From 2601:
Remove misleading extra requirement about method semantics (see #545)
unassigned
to 26
incorporated
new
to closed
Part 2, section 4:
"All general-purpose servers MUST support the methods GET and HEAD. All other methods are OPTIONAL; when implemented, a server MUST implement the above methods according to the semantics defined for them in Section 4.3."
This ignores methods not defined here.
Reported by julian.reschke@gmx.de, migrated from https://trac.ietf.org/trac/httpbis/ticket/545