![]() ![]() ![]() | 投稿するにはまず登録を |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
cazy06 | Åê¹ÆNo.38277 投稿日時: 2008-3-31 10:39 |
新米 ![]() ![]() 居住地: 投稿: 2
使用環境:
Windows XP, Flash CS3 |
XML-RPC 通信 ActionScript3で、XMLRPCを利用したデータ通信をこころみております。
まずはlocalhostを立てて、そこにxmlを送信してレスポンスを表示させようとしていますがうまくいきません... サーバー側のXML-RPCはFlash以外からのアクセスには反応しているのでFlashの問題と考えられます。 詳しい方、教えていただけますでしょうか。よろしくおねがいいたします。 --SCRIPT root 1フレーム(ココから)--------------------------------------------------- //ボタンリスナー生成 sendButton.addEventListener(MouseEvent.CLICK, sendData); //送信メソッド function sendData(event:MouseEvent):void { //XMLドキュメントを生成 var xml:XML= new XML(); xml =<methodCall> <methodName>Accessor.get</methodName> <params> <param> <value> <struct> <member> <name>userid</name> <value> <i4>4</i4> </value> </member> </struct> </value> </param> </params> </methodCall>; //送信 var request:URLRequest = new URLRequest(); request.method = URLRequestMethod.GET; request.data = xml; request.url = "http://localhost:xxxx/xmlrpc"; navigateToURL(request, "_blank"); } --SCRIPT root 1フレーム (ココまで) ----------------------------------------------- ![]() |
ニノミヤ カズノリ | Åê¹ÆNo.38286 投稿日時: 2008-3-31 20:28 |
職人 ![]() ![]() 居住地: 東京 投稿: 430
使用環境:
![]() ![]() ![]() ![]() ![]() Flash Player 10,0,22,87, AIR 1.5.1, IE 5.5 & 6 & 7 & 8, Firefox 2.0.0.20 & 3.0.11 & 3.5, Opera 9.64, Safari 4, Google Chrome 2.0.172.31, Netscape 7.1 |
Re: XML-RPC 通信 引用:
cazy06さんは書きました: どの様にうまく行かないのでしょうか? 新規ウィンドウにレスポンスが返らず、何も表示されないのでしょうか。 xml-rpcは詳しくありませんが、気になった点が一つ。 リクエストメソッドがGETになっていますが、 Flashで無い場合だと正常にレスポンスが返ってくるのでしょうか? |
cazy06 | Åê¹ÆNo.38289 投稿日時: 2008-4-1 12:01 |
新米 ![]() ![]() 居住地: 投稿: 2
使用環境:
Windows XP, Flash CS3 |
Re: XML-RPC 通信 コメントありがとうございます。
>リクエストメソッドがGETになっていますが、 >Flashで無い場合だと正常にレスポンスが返ってくるのでしょうか? ご指摘のとおり、ここはPOSTにすべきでした。 うまくいかない症状としては、開かれる新規ウィンドウにサーバーのエラーメッセージ画面(サポートされていない関数です、など)が表示される状態でした。 また、navigateToURLの機能を十分理解していなかったようで、XML-RPC通信ではHTTPで戻り値が返され、その戻り値を表示したかったのですがそのようなメソッドではないようですね。。 以下の内容に修正したところflashのオブジェクトに対して読み込ませることはできました。 -----ココカラ------------------------------------------------- //ボタンリスナー生成 sendButton.addEventListener(MouseEvent.CLICK, sendData); //送信メソッド function sendData(event:MouseEvent):void { //XMLドキュメントを生成 var xml:XML= new XML(); var Loader:URLLoader = new URLLoader(); var valiables:URLVariables = new URLVariables(); xml =<methodCall> <methodName>getXXXX</methodName> <params> <param> <value> <struct> <member> <name>userid</name> <value> <i4>4</i4> </value> </member> </struct> </value> </param> </params> </methodCall>; //送信 var request:URLRequest = new URLRequest(); request.method = URLRequestMethod.POST; request.data = xml.toXMLString(); request.url = "http://localhostxxxxx/xmlrpc"; //sendToURL(request); Loader.addEventListener(Event.COMPLETE, completeHandler); Loader.load(request); Loader.data = xml.toXMLString(); Loader.dataFormat = URLLoaderDataFormat.VARIABLES; trace(request.data); } function completeHandler(event:Event):void { var Loader:URLLoader = URLLoader(event.target); var variables:URLVariables = new URLVariables(Loader.data); indicater.text=decodeURIComponent(decodeURI(XML(variables))); } ------ココマデ----------------------------------------------------- |
ニノミヤ カズノリ | Åê¹ÆNo.38290 投稿日時: 2008-4-1 12:14 |
職人 ![]() ![]() 居住地: 東京 投稿: 430
使用環境:
![]() ![]() ![]() ![]() ![]() Flash Player 10,0,22,87, AIR 1.5.1, IE 5.5 & 6 & 7 & 8, Firefox 2.0.0.20 & 3.0.11 & 3.5, Opera 9.64, Safari 4, Google Chrome 2.0.172.31, Netscape 7.1 |
Re: XML-RPC 通信 引用:
cazy06さんは書きました: 正常に値が返ってくるのであれば、新規ウィンドウに表示されると思いますよ。 試しに私が使っているmovable typeでXML-RPCを使ってみましたが、 レスポンスが返り、xmlが表示されました。 【追記】 あ、Flashに返そうとしていたんですね。 失礼しました。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |
投稿するにはまず登録を | |