gatewayで接続できるかamfphpを使用してwonderflでテスト


http://d.hatena.ne.jp/megane_bomb/20100704を参考にして
gatewayに接続できるかwonderflでテストします





ドメインが違うと外部のファイルが読み込めないクロスドメイン制約というものがあるので
crossdomain.xmlドメイン直下に配置しないとダメ!


・crossdomain.xml

<?xml version="1.0"?><!DOCTYPE cross-domain-policy SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<site-control permitted-cross-domain-policies="all"/>
<allow-access-from domain="*" to-ports="*" secure="false"  />
</cross-domain-policy>




・wonderflで接続場所とクラス名とメソッド名と引数を指定するとTESTができる
http://wonderfl.net/c/57Mw


// forked from pm11op's flash on 2009-12-24
package
{
import flash.display.Stage;
import flash.display.Sprite;
import flash.net.Responder;
public class AS3RemotingTest extends Sprite
{
public var dataProvider:Array;
public var gateway : RemotingConnection;
public function AS3RemotingTest()
{
this.init();
}
public function init() : void
{
var gatewayUrl:String = "自分の環境に合わせる/amfphp/gateway.php";
gateway = new RemotingConnection(gatewayUrl);
var responder:Responder = new Responder(onResult, onFault);
var arg:String = '3';
var text:String = '111';
var score:String = '123456';
gateway.call( "クラス名.メソッド名", responder, 引数1 , 引数2);
}
public function onResult( result : * ) : void
{
trace('onResult invoked');
trace(result);
}
public function onFault( fault : String ) : void
{
trace('onFault invoked');
trace( fault );
}
}
}

import flash.net.NetConnection;
import flash.net.ObjectEncoding;
class RemotingConnection extends NetConnection
{
public function RemotingConnection( sURL:String )
{
objectEncoding = ObjectEncoding.AMF3;
if (sURL) connect( sURL );
}
}


そして、実行してcharlesでデータのやり取りがきちんとされているか、確認する!