URLRequestのリクエストメソッドが固定されてしまう?

Flash からリクエストを送信する時のメモ。

URLVariables を使ってデータを渡す場合、 URLRequest のdataプロパティにセットするらしいんですが、 そのままやるとリクエストメソッドがなぜかPOSTになってしまう。

追記 PUTやDELETEだと、ちゃんと送信されるっす。berian氏サンクスです。

//  URLRequestの生成。
var request:URLRequest = new URLRequest('http://example.com');
//  リクエストメソッドにGETを指定。
request.method = URLRequestMethod.GET;

//  リクエストするデータの作成。
var variables:URLVariables = new URLVariables();
variables.key1 = 'value1';
variables.key2 = 'value2';

//  リクエストにセット。
request.data = variables;

//  ローダを生成とリクエスト送信。
var loader:URLLoader = new URLLoader();
loader.load(request);   // <-- 結果がなぜかPOSTになる。

URLRequest - ActionScript 3.0 コンポーネントリファレンスガイド を見てみると、 GETでもPOSTでもイケるっぽい事書いてあるんだけどなぁ。そういう仕様?それともバグ?

特にやりようも知らないので、とりあえずこうしてみたよ。

request.url += '?' + variables.toString();

var loader:URLLoader = new URLLoader();
loader.load(request);   // <-- コレだとちゃんとGETになる。

URLVariables をtoStringすると、ちゃんとエンコードして返してくれるらしい。 間に入る?が気持ち悪いものの、エンコードしてくれるのはありがたいので、 ひとまずコレで落ち着いたかな。

関係ないけど、 URLRequestMethod にGETとPOSTしかないのが微妙に気になる。 PUTとDELETEも入れといてほしいなぁ。って、ちょっと思ったり。

Posted at: 
2007/10/21 22:08:52
5 Comments
0 TrackBacks
Tags: 
ActionScript
Flash
Trackback: 
http://humming.via-kitchen.com/2007/10/21/fixed-requestmethod-on-urlrequest/trackback/

TrackBacks

まだ登録されていません。

Comments

kjirou

これはいいサンプル
他人の作った獣道を辿るのが大好きです。

Created at: 
2007/10/21 23:39:18

berian

--------------------------------------
request.method = URLRequestMethod.GET;
--------------------------------------
ではなく、
--------------------------------------
request.method = "GET";
--------------------------------------
でもダメですかね?

そもそも、「URLRequestMethod.GET」これってどんな値を返すんでしょうか?

Created at: 
2007/10/21 23:51:58

nobu

> kjirou氏
ちょっと刺さったみたいで良かったっす。

> berian氏
文字列の"GET"を叩き込んでみても同じっすなぁ。
URLRequestMethod.GETの中身は普通に"GET"って文字列です。

Created at: 
2007/10/22 00:16:29

berian

あ、そうでしたかー。。
じゃぁ、結果は同じですよね・・

GETだけが固定されるのかなー。PUTとかにしても同じようにPOSTにされちゃうのかなー。

なんだろうな~

Created at: 
2007/10/22 00:52:35

nobu

> berian氏
良いツッコミをサンクスです。

PUTやDELETEだとちゃんと送信されますなぁ。
AIRで付箋紙アプリを作った時はハマらなかったし。

う〜ん、なんでしょうなぁ?

Created at: 
2007/10/22 01:16:04

Add Comment

Add Comment