What is the default form HTTP method?

前端 未结 5 2213
悲&欢浪女
悲&欢浪女 2020-11-22 03:01

When an HTML form is submitted without specifying a method, what is the default HTTP method used? GET or POST?

Has this behaviour ever changed between HTML standard

5条回答
  •  感动是毒
    2020-11-22 03:49

    (fuller answer, also about action and enctype)

    The default 'method', 'action' and 'enctype' of an HTML form, if they are not specified,
    are GET, current URL and application/x-www-form-urlencoded respectively.
    (I.e., by default, a form requests current page with the inputted parameters.)

    This behaviour has never changed, except 'action' (in HTML 4 it was required). Citations:

    • 5 and subsequent, W3C TR

    method: "The missing value default for the method attribute is... the GET state."
    action:

    The action of an element is the value of the element’s formaction attribute, if the element is a Submit Button and has such an attribute, or the value of its form owner’s action attribute, if it has one, or else the empty string. <...> If action is the empty string, let action be the document’s URL of the form document.

    enctype: "The missing value default for the enctype attribute is... the application/x-www-form-urlencoded state."

    • 4.0, W3C TR; 4.01, W3C TR

    method: "Possible (case-insensitive) values are 'get' (the default) and 'post'."
    action: no default, DTD requires it
    enctype: "The default value for this attribute is 'application/x-www-form-urlencoded'."

    • 3.2, W3C TR

    method: "It can be either GET or POST, and defaults to GET."
    action: no explicit sentence, only in DTD
    enctype: "It defaults to application/x-www-form-urlencoded."

    • 2.0, RFC

    method: no explicit sentence, only in DTD
    action: "The action URI of a form defaults to the base URI of the document"
    enctype: "The default encoding for all forms is `application/x-www-form-urlencoded'."

提交回复
热议问题