Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

URLRequest/URLLoader auto-converting POST request to GET

When I execute the following code:

var urlRequest:URLRequest = new URLRequest("http://somehost/with/some/path?andsomequerystring=true");
urlRequest.method = 'POST';
var urlLoader:URLLoader = new URLLoader(urlRequest);
urlLoader.addEventListener(Event.COMPLETE,  function(event:Event):void{
    trace('sweet');
});

It turns my explicit POST request to GET due to the presence of the querystring. If I remove the querystring (and serialize as part of the POST body), it successfully makes the corresponding POST request. Is there any way to prevent it from doing that? My server requires that a POST request be made with a querystring.

like image 516
badunk Avatar asked Oct 08 '12 02:10

badunk


1 Answers

Ah think I found the answer, seems you have to specify a body as well or else it will still send as a GET request from their docs:

Note: If running in Flash Player and the referenced form has no body, Flash Player automatically uses a GET operation, even if the method is set to URLRequestMethod.POST. For this reason, it is recommended to always include a "dummy" body to ensure that the correct method is used.

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/net/URLRequest.html#url

like image 100
shaunhusain Avatar answered Nov 02 '22 23:11

shaunhusain