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
If not specified, the default is GET. I see no indication that this behaviour has ever been different. And it makes sense the GET is the default, as it specifies that method should be used for actions without side effects.
http://www.faqs.org/faqs/www/cgi-faq/section-37.html
Citations from http://www.w3.org/TR/html401/interact/forms.html#h-17.3:
method = get|post [CI]
This attribute specifies which HTTP method will be used to submit the form data set. Possible (case-insensitive) values are "get" (the default) and "post". See the section on form submission for usage information.17.13.1 Form submission method
The method attribute of theFORMelement specifies the HTTP method used to send the form to the processing agent. This attribute may take two values:
get: With the HTTP "get" method, the form data set is appended to the URI specified by the action attribute (with a question-mark ("?") as separator) and this new URI is sent to the processing agent.
post: With the HTTP "post" method, the form data set is included in the body of the form and sent to the processing agent.
The "get" method should be used when the form is idempotent (i.e., causes no side-effects). Many database searches have no visible side-effects and make ideal applications for the "get" method.