控制连接数量和密码保护-flashcom教程
来源:互联网 发布:java color rgb 编辑:程序博客网 时间:2024/04/27 20:00
如果你运行超过一个flash communication server的程序,早晚你会需要限制一下连接每一个应用程序的
数量,尤其是你的程序在流行后.毕竟,你不想让你的多用户水球游戏(multiuser water balloon game)无法进行,因为你的虚拟数据程序占用了全部的服务器连接.我的处方就是对所有的通信程序作限制连接.
让我们开始,看一看当flash文件连接到flashcom server的时候到底发生了什么.除非另外指出,flashcom
server总是接收客户端发出的连接请求直到再没有更多的线路提供.如果你想改变这个行为,你需要设
定一些服务的规则,在当决定是否应该允许或者拒绝连接的时候使用.写一些服务器端的AS来达到这个任务.
设想你不想超过5个用户在同一时间连接到你的程序.在你选择的文本编辑器中创建一个新文本,并保存为
main.asc.这个main.asc文件允许你为你的通信程序增加新的能力.把下面的代码加进去:
application.onConnect = function ( pClient ) { if ( application.clients.length >= 5 ) { application.rejectConnection(pClient); } else { application.acceptConnection(pClient); } }
application.onConnect = function ( pClient ) { ... }
于这点,服务器必须决定是否允许这个连接继续或者拒绝关闭这个连接.为这个事件创建一个函数是一个简
便的方法,它让你的服务器在发生此情况的时候执行一些规则.
每一个程序实例都有一个数组叫"clients",它包含引用了每一个被接收连接到程序的客户端.检查这个数
组的length属性,告诉你当前连接的客户端数量.通过这个数值和你选择的数值比较,你可以设置一个极限
来执行上述的代码.这里,你检测是否超过5个客户端被连接.建议 由于连接请求会触发onConnect事件也不
是正式被认可的,不会把这样的(译者:发出请求的)客户端计入clients数组,即使它占据服务器的可用连接
,也只是临时的
这个代码当在连接数超过极限5时被执行.首先它会通过pClient发送一个状态代码给客户端简要说明一下,
好像这样 : "NetConnection.Connect.Rejected" 然后立即关闭临时连接.注意到前面的状态代码,等下就会看到.
} else { application.acceptConnection(pClient); }
这些就是所有在main.asc文件中的代码.把这个文件放入你程序的flashcom sever目录中.main.asc的内容
只是在当程序第一次启动时被引用,所以如果一个你的程序实例已经在服务器上运行,就重启它.
此时,你已经为服务器在允许连接时提供了一个有力的决定,让我们在客户端提供一个方法来响应一下服务
器的决定.
在你的flash文件中写下下面的函数来操作制作一个对服务器的连接.把这个函数放到你影片的第一帧,确
保你在使用它时被用到:
function doConnect () { vConn_nc = new NetConnection(); vConn_nc.connect("rtmp://yourflashcomserver.com/yourApp"); vConn_nc.onStatus = function ( pInfo ) { if ( pInfo.code == "NetConnection.Connect.Success" ) { gotoAndPlay("Start"); } else if ( pInfo.code == "NetConnection.Connect.Failed" || pInfo.code == "NetConnection.Connect.Rejected" ) { gotoAndPlay("Access Denied"); } } }
vConn_nc = new NetConnection(); vConn_nc.connect("rtmp://yourflashcomserver.com/ourApp");
- 控制连接数量和密码保护-flashcom教程
- 控制连接数量和密码保护-flashcom教程
- 控制连接数量和密码保护-flashcom教程 密码保护
- map和reduce数量控制
- 在FlashCom中检测摄像头和麦克风
- jquery控制"+","-"改变物品数量和钱数
- 密码保护
- 【转】连接示例--FlashCom Develop阅读笔记 2
- 如何控制hadoop中map和reduce任务的数量
- hive 优化 控制 map 和 reduce的数量
- 倍福TwinCAT(贝福Beckhoff)应用教程12.1 TwinCAT控制松下伺服 连接和试运行
- 线程的数量控制
- 线程数量控制
- 控制SQL返回数量
- Spark控制ReduceTask数量
- map任务数量控制
- 倒计时控制数量传递
- 控制并发数量
- 琐事点滴
- [转]Bill Gates的大学毕业典礼演讲
- cast
- 打印机一直在打印不停止的问题
- DELPHI中拖放的操作
- 控制连接数量和密码保护-flashcom教程
- 如何在激烈的团队竞争中生存 —幸存者游戏给出的12个启示
- Win98/2K系统启动到“windows正在启动”就停止不动了
- 用FLASH COM做视屏聊天室
- DELPHI中的拖动开发(2)
- 晕了,UCOS
- 流式flash格式——FLV
- 10021.skyeye
- 如何彻底删除软件程序(某些软件/程序在添加删除程序中不能删除)