您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

AS3与PHP通讯的五种方法(基于HTTP协议)

2024/3/11 7:41:10发布48次查看
as3与php通信的五种方法(基于http协议)
/** * 这是基于http协议的 * 一共介绍了五种方法 */ package { import flash.display.sprite; import flash.events.*; import flash.net.urlloader; import flash.net.urlrequest; import flash.net.urlvariables; import flash.net.urlrequestmethod; import flash.net.urlloaderdataformat; import flash.net.urlrequestheader; import flash.utils.bytearray; /** * ... * @author .....michael zhang * @contact...qq:271291823 */ public class aswithphp_1 extends sprite { private var urlloader:urlloader; private var phpurl:urlrequest; public function aswithphp_1() { init(); } private function init():void { urlloader = new urlloader(); phpurl = new urlrequest(php地址); /** * 第一种:直接读取php里面的数据 */ //---------------------------------- urlloader.dataformat = urlloaderdataformat.variables; /** * urlloaderdataformat.binary:string---->指定以原始二进制数据形式接收下载的数据 * urlloaderdataformat.text:string----> 指定以文本形式接收已下载的数据 * urlloaderdataformat.variables:string---->指定以 url 编码变量形式接收下载的数据 */ urlloader.load(phpurl); urlloader.addeventlistener(event.complete, completehandler1); //----------------------------------- /** * 第二种:读取php生成的xml */ //------------------------------------- urlloader.load(phpurl); urlloader.addeventlistener(event.complete, completehandler2); //------------------------------------- /** * 第三种:通过get方法把参数传到php里面 */ //-------------------------------------- phpurl.method = urlrequestmethod.get; phpurl.data = 要传出去的数据; urlloader.load(phpurl); urlloader.addeventlistener(event.complete, completehandler3); //-------------------------------------- /** * 第四种:通过post方法把参数传到php里面 */ //-------------------------------------- phpurl.method = urlrequestmethod.post; var vars:urlvariables = new urlvariables(); vars.value1 = 参数1; vars.value2 = 参数2; phpurl.data = vars; urlloader.dataformat = urlloaderdataformat.variables; urlloader.load(phpurl); urlloader.addeventlistener(event.complete, completehandler4); //-------------------------------------- /** * 第五种:二进制通信方法 */ //---------------------------------------- var requestheader:urlrequestheader = new urlrequestheader(content-type, application/octet-stream); phpurl.method = urlrequestmethod.post; phpurl.requestheaders.push(requestheader); var bytearr:bytearray = new bytearray(); bytearr.writebyte(12); bytearr.writeutf(cnsloppyman); var senddata:bytearray = new bytearray(); senddata.writeint(bytearr.length); senddata.writebytes(bytearr); phpurl.data = senddata; urlloader.dataformat = urlloaderdataformat.binary; urlloader.load(phpurl); urlloader.addeventlistener(event.complete, completehandler5); //----------------------------------------- } private function completehandler1(e:event):void { var vars:urlvariables = urlvariables((e.currenttarget as urlloader).data); trace(接受数据: + vars.value); //假定value是php里面自定义的节点值 } private function completehandler2(e:event):void { var xml:xml = new xml((e.currenttarget as urlloader).data); trace(xml数据: + xml.tostring()); } private function completehandler3(e:event):void { trace(get-已经传出去的数据: + (e.currenttarget as urlloader).data); } private function completehandler4(e:event):void { trace(post-已经传出去的数据: + (e.currenttarget as urlloader).data); } private function completehandler5(e:event):void { var _bytearr:bytearray = e.currenttarget.data as bytearray; trace(_bytearr.readint()); //14 trace(_bytearr.readbyte()); //12 trace(_bytearr.readutf()); //cnsloppyman } } }
?
?
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product