Linux安全网 - Linux操作系统_Linux 命令_Linux教程_Linux黑客

会员投稿 投稿指南 本期推荐:
搜索:
您的位置: Linux安全网 > Linux编程 > » 正文

AS3利用AMFPHP与PHP进行通讯

来源: liminxin272 分享至:
首先,说下具体配置,php/' target='_blank'>PHP版本:5.2.5,apache:2.2.11,amfphp:1.9版本,windows xp系统。

注意:amfphp的不同的版本与php不同的版本会有冲突。具体检测方法是:在web根目录下解压amfphp后,访问该url: http://localhost/amfphp/browser/,如果没有报任何错误,那么恭喜你。如果有错误,请更换amfphp的版本。

经我的测验,上面那个配置是不会有问题的。

方法步骤:
1、声明一个NetConnection,选择使用AMF3协议,现在一般都用AMF3
2、声明一个Responder对象,该对象在 NetConnection.call() 中使用以处理来自与特定操作成功或失败相关的服务器的返回值。
3、用NetConnection.call()读取PHP里面的方法,NetConnection.call(command:String, responder:Responder)。
Responder里两个函数参数,第一个,如果对服务器的调用成功并返回结果,则此函数被调用。例子中的onSuccess。

第二个, 如果服务器返回一个错误,则此函数被调用。例子中的,onError。

package  
{
	import flash.display.Sprite;
	import flash.events.*;
	import flash.net.NetConnection;
	import flash.net.ObjectEncoding;
	import flash.net.Responder;
	
	/**
	 * ...
	 * @author .....Li灬Star
	 * @contact...QQ:168527720
	 */
	public class ASWithPHP_2 extends Sprite 
	{
		private var connection:NetConnection = new NetConnection();
		private var rsp:Responder = new Responder(onSuccess, onError);
		private var phpUrl:String = "PHP地址"; //注意是字符串,而不是URLRequest
		
		public function ASWithPHP_2() 
		{
			init();
		}
		
		private function init():void 
		{
			connection.objectEncoding = ObjectEncoding.AMF3; //选择AMF3协议
			connection.addEventListener(NetStatusEvent.NET_STATUS, onNetStatus);
			connection.connect(phpUrl); //连接后台PHP地址
			connection.call("PHP里面的方法", rsp);
		}
		
		private function onNetStatus(e:NetStatusEvent):void 
		{
			switch(e.info.code) {
			    case "NetConnection.Connect.Success":
				trace("连接成功");
				break;
				
				case "NetStream.Play.StreamNotFound":
				trace("没有找到:" + phpUrl);
				break;
			}
		}
		
		private function onSuccess(obj:Object):void {
		    trace("OK:" + obj);
		}
		
		private function onError(_obj:Object):void {
		    trace("错误");	
		}
	}

}



Tags:
分享至:
最新图文资讯
1 2 3 4 5 6
验证码:点击我更换图片 理智评论文明上网,拒绝恶意谩骂 用户名:
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 发展历史