作者:zccst
构建通信请求
五个类:
URLRequest, URLLoader, URLLoaderDataFormat, URLRequestMethod, URLVariables
一、最简单的通信请求
URLLoader对象负责网络的连接状态操作,同时负责接收网络回传的数据。
URLRequest对象负责网络通信数据
创建最简单通信请求我们需要使用URLLoader和URLRequest两个类。
private urlloader:egret.URLLoader;
this.urlloader = new egret.URLLoader();
private urlreq:egret.URLRequest;
this.urlreq = new egret.URLRequest();
urlreq.url = "http://httpbin.org/user-agent";
this.urlloader.load( urlreq );
this.urlloader.addEventListener(egret.Event.COMPLETE, this.onComplete, this);
private onComplete(event:egret.Event):void{
console.log(this.urlloader.data);
}
二、读取不同数据格式 URLLoaderDataFormat
在Egret中,我们提供了五种可用的数据格式,分别是:
(1) 二进制格式 BINARY
(2) 文本格式 TEXT
(3) URL编码格式 VARIABLES
(4) 位图纹理格式 TEXTURE
(5) 音频格式。 SOUND
以上五种数据格式的设置均需要 URLLoaderDataFormat 类。如果想更改默认的文本格式,可以修改 URLLoader 中的 dataFormat 属性。
this.urlloader.dataFormat = egret.URLLoaderDataFormat.VARIABLES;
三、POST与GET URLRequestMethod
this.urlreq.method = egret.URLRequestMethod.POST;
四、发送带参数的请求 URLVariables
一般来说,向服务器提交数据实际上总是包含两个步骤,提交数据与读取返回信息。
提交的数据放入 URLRequest 对象的 data 属性值,并通过 URLRequest 对象提交。
读取服务器端脚本返回的数据
(1)向服务器发参数
this.urlreq.data = new egret.URLVariables("test=ok");
(2)从服务器端取数据
在回调函数onPostComplete方法里:
var loader:egret.URLLoader = <egret.URLLoader>event.target;
var data:event.URLVariables = loader.data;
console.log(data.toString);
如果您觉得本文的内容对您的学习有所帮助,您可以微信:
分享到:
相关推荐
在本文中,我们将深入探讨如何在Egret游戏引擎中创建一个下拉框。Egret是一个基于TypeScript的2D游戏开发框架,它提供了一套完整的开发工具链,包括编辑器、编译器和运行时环境,适用于移动和桌面平台。 首先,我们...
在服务器端,可以使用Node.js的` adm-zip `库,或者在客户端直接利用`jszip`的API。 2. **创建`indexZip.html`**:这个文件是微端的启动点,它包含了`jszip`库的引用和解压zip文件的代码。`indexZip.html`会通过...
页面https://bbs.egret.com/data/attachment/forum/201612/16/171055lfnzludpodg4oovl.jpg 动态效果图 https://bbs.egret.com/data/attachment/forum/201612/16/160027a9ornovkktn9dk58.gif
需要同步github项目和gitlab项目需要同步更新官网中的本地文件:egret-engine2d/static/img/docs/installation/
这个项目可能包含了服务器端和客户端的代码,展示了如何定义协议、序列化和反序列化数据,以及如何通过Websocket进行数据交换。 5. 实现步骤: - 定义协议:定义用于传输的数据结构,通常会包括消息类型、数据长度...
4. **舞台与显示对象**:Egret 中的舞台是所有内容的容器,而显示对象(如Sprite、Bitmap等)是舞台上可以被显示的基本元素,它们可以嵌套组成复杂的场景结构。 5. **资源管理**:Egret 提供了资源加载和管理功能,...
Egret小游戏示例是基于白鹭引擎(Egret Engine)开发的一款互动娱乐项目,它为初学者提供了深入了解和学习Egret游戏开发的良好实践。Egret引擎是一款广泛使用的HTML5游戏开发工具,它支持2D游戏制作,并且能够跨平台...
这是一个令人兴奋的小结,因为在这个小结中你终于能够看到你的第一个Demo的运行效果。 1.使用Egret工具运行游戏 运行Egret项目,我们需要一个已运行的HTTP...这个命令中egret startserver为启动egret内部服务器的命
var audioSound: egret.Sound = RES.getRes("myAudio"); ``` `myAudio`是音频资源在资源配置中的名称。 4. **播放音频**:使用`Sound`对象的`play`方法播放音频,可以设置播放次数和是否循环。 ```javascript ...
Egret Engine的核心组件(egret-core)是框架的基础,它提供了渲染引擎、事件系统、资源管理器、时间轴控制、网络通信等基础功能。开发者可以使用这些工具构建游戏逻辑,实现游戏的图形渲染和交互处理。 2. **源码...
5. **发布与部署**:最终将编译后的文件上传到服务器,用户可以通过浏览器访问和玩你的游戏。 四、Egret关键特性 - **2D渲染**:Egret提供高效的2D渲染引擎,支持位图、矢量图、粒子效果等。 - **动画系统**:基于...
Egret的工作流包括项目创建、资源管理、代码编写、编译与预览等步骤,掌握这些流程能让你高效地进行游戏开发。 在游戏开发过程中,Egret引擎提供了丰富的图形绘制和动画制作工具。例如,你可以利用Egret的Sprite...
8. **网络通信**:如果游戏包含排行榜或社交功能,Egret的网络模块可以帮助开发者实现与服务器的通信,上传和下载游戏数据。 通过分析《Egret 消消乐》,我们可以看到Egret引擎在游戏开发中的强大应用,同时也揭示...
同时,需要实现数据通信,可能通过WebSocket或HTTP长轮询等方式,将客户端与服务器进行实时交互。 3. **UI界面构建**:Egret提供了强大的图形渲染能力,可以使用SpriteSheet、BitmapFont等资源创建用户界面。...
- **网络通信**:如果游戏需要在线功能,开发者可以利用 Egret 的 HTTP 请求接口与服务器进行数据交换,实现多人游戏或云存档等功能。 综上所述,"22_游戏egret" 项目展示了 Egret 框架在开发 2D 游戏时的应用,从...
- **网络通信**:提供了HTTP和WebSocket接口,方便游戏与服务器进行数据交互。 3. **TypeScript支持**: Egret引擎鼓励使用TypeScript进行开发,因为它提供了静态类型检查,有助于防止运行时错误,并提高代码可...
本库旨在为Egret封装常用的手势操作,因本人能力有限,有的实现并不完善,欢迎批评指正。Egret手势识别库egret_gesture目前已实现的手势: 1. Tap(点一下) 2. Double Tap (双击) 3. Pinch(二指往內或往外拨动,平时...
egret.Tween.get(blackLayer).to({ alpha: 1 }, 500).call(() => { // 这里切换场景 egret.Event.dispatchEvent(this, "switchScene", false); }); // 在新的场景加载后,反向执行动画 egret.Event....
var timer: egret.Timer = new egret.Timer(50); BC.addEvent(this, timer, egret.TimerEvent.TIMER, this.onEnterTimer); timer.start(); } /** * dispatchSprite的帧事件 */ public onEnterFrame(event:...
Socket连接是网络游戏的基础,它让游戏客户端与服务器之间可以实时交换数据。在Egret黄金矿工中,socket连接被用于玩家的动作同步,例如矿工的抓钩移动和物品的掉落,确保所有玩家看到的是同一游戏状态。通讯协议的...