0

ユーザーが食材とレシピを照合できるモバイルアプリを作成しています。http://www.recipepuppy.com/about/api/に出くわしました。これは、次のようなコンマ区切りの成分で検索するための非常に単純な API を提供します。

http://www.recipepuppy.com/api/?i=onions,garlic&format=xml

次のように、共有オブジェクトにさまざまな成分が保存されています。

so.data.meat1 = "beef"
so.data.meat2 = "chicken"
so.data.meat3 = "lamb"
so.data.veg1 = "green beans"
etc etc..

私は AS3 にまったく慣れていないので、これを実現できる主なメソッドやクラスについてはまったくわかりません。

1.共有オブジェクトのデータを上記のレシピ子犬のURLのクエリ文字列に渡すにはどうすればよいですか? 2. XML の結果をデータグリッドまたは類似のコンポーネントにロードするにはどうすればよいですか?

編集:これは私がこれまでに得たものです:

var url : String = 'http://www.recipepuppy.com/api/';

            // url variables all which will appear after ? sign
            var urlVariables : URLVariables = new URLVariables ();
                urlVariables['i'] = so.data.meat1;
                urlVariables['i'] = so.data.meat2;
                urlVariables['format'] = "xml";
                // here you can add as much as you need

            // creating new URL Request
            // setting the url
            var request : URLRequest = new URLRequest  ( url );
                // setting the variables it need to cary
                request.data = urlVariables;
                // setting method of delivering variables ( POST or GET )
                request.method = URLRequestMethod.GET;

            // creating actual loader
            var loader : URLLoader = new URLLoader ();
                loader.load ( request );
                trace(request.data);

正常に動作していますが、現在の urlVariables['i'] の設定では 1 つの 'i' 変数しか指定できません。'i' 変数に複数の変数値を指定するにはどうすればよいですか?

4

1 に答える 1

1

OK、答えを得るには、それを強化する必要があります:)

まず、ここに示すように、材料を配列として SO に保存する必要がありますSharedObject#data

so.data.ingredients = ["beef","chicken","lamb"];

次に、それを次のように urlVariables に渡すことができます。

urlVariables['i'] = so.data.ingredients.join();

もちろん、スローされたエラーを回避するために so.data.ingredients が存在する場合は、som テストを追加します。

于 2013-04-29T07:31:39.600 に答える