Bug 65111

Summary: Forms are submitted as GET on Cmd+click, even if POST was specified
Product: WebKit Reporter: Tobias Tom <t.tom>
Component: FormsAssignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Normal CC: abarth, ap, aroben, beidson, darin, david.webkit.org
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: Mac (Intel)   
OS: OS X 10.7   
Bug Depends on:    
Bug Blocks: 74916    
Attachments:
Description Flags
Test case. none

Description Tobias Tom 2011-07-25 08:13:48 PDT
When the submit button of a form is pressed with command, the action URL is opened inside a new tab. If the method was specified as POST, the URL will be requested with GET. There seems to be no possibility to submit a form to a new tab and use the POST method.
Comment 1 Alexey Proskuryakov 2011-07-25 08:58:59 PDT
<rdar://problem/9834043>
Comment 2 Jonathan Pool 2011-08-20 10:03:17 PDT
Created attachment 104620 [details]
Test case.

Command-modified link selection returns the linked page in a new tab.

But command-modified execution of the "Search" button returns an "Error" page in a new tab. The "Error" page is returned because the server receives the form data with REQUEST_METHOD = GET and QUERY_STRING = "" (blank), instead of the form-prescribed method and data.

This misbehavior was not present in Safari 4.0.5.

Another browser exhibiting this bug is Chrome.

Some browsers ignore the new-tab modifier, correctly submit the form data with POST, and display the returned page in the same tab. These browsers include Camino, Firefox, iCab, and Sunrise.

Some browsers correctly submit the form data with POST and display the resulting page in a new tab, obeying the modifier. These browsers include OmniWeb, Opera, SeaMonkey, Stainless, and (as mentioned above) Safari 4.0.5.
Comment 3 Tobias Tom 2011-08-20 22:53:49 PDT
I would strongly vote for the second variant: to obey the modifier. It feels much more consistent.
Comment 4 Jon Lee 2012-03-29 13:43:39 PDT
*** Bug 82426 has been marked as a duplicate of this bug. ***