0

リクエストに対してサーバーの「schooltraq.com/api/」変数を送信しようとしています。私のコード:

package
{
    import flash.display.MovieClip;
    import flash.display.Sprite;
    import flash.events.*;
    import flash.net.*;

    public class tester extends MovieClip
    {
        private var url:String = "http://schooltraq.com/api/";
        var loader:URLLoader = new URLLoader();
        public function tester()
        {
            getAssignments();
        }
        private function getAssignments()
        {
            var request:URLRequest = new URLRequest(url);
            request.method = URLRequestMethod.POST;
            var vars:URLVariables = new URLVariables();

            vars.type = "get";
            vars.request = "assignmentlist";

            request.data = vars;
            trace(request.data);        

            loader.addEventListener(Event.COMPLETE, on_complete);
        }
        private function on_complete(e:Event):void
        {
            trace(loader.data);
        }
    }
}

しかし、「error:emptyrequest」を繰り返し返すと。私はサイトの所有者に電子メールを送りました、そして彼は私のプログラムがリダイレクトの間にデータを落とすかもしれないと言いました。それを修正する方法はありますか?彼らのAPIはhttp://help.schooltraq.com/kb/schooltraq-api/an-overview-of-the-schooltraq-apiです。どんな助けでも大歓迎です。

4

1 に答える 1

1

これは Brandon Wang (Schooltraq の創設者兼主任開発者) です。API を使用していただきありがとうございます。

この問題を解決するには、ActionScript がどのように機能するかを知らないため具体的なことは言えませんが、次の点が役立つ可能性があります。

  1. にリクエストを送信してみて、リクエストがhttp://beta.schooltraq.com/api完了するかどうかを確認してください。私たちはパーマネント リダイレクトを使用して、人々を特定の場所に誘導していschooltraq.com/apiますbeta.schooltraq。このリダイレクトをお勧めする理由は、API エンドポイントが移動する可能性があるためです。これが問題を引き起こしている場合は申し訳ありません:(

  2. POST本当にリクエストを実行していますか? リクエストを実行するときGETに、API が実際にはそのように設定されていないことがあります。ただし、コードからリクエストを実行しているように見えるPOSTので、完全にはわかりません。

  3. 上記のコードでは、 に必要な API キーも送信していませんGET ASSIGNMENTLIST

これが役立つことを願っています。

于 2011-09-23T17:00:37.843 に答える