·您当前的位置:首页 > 技术教程 > Rtmp技术 >

[FMS]Flash Media Server之教程附示例代码(4)

时间:2012-09-18 14:15www.riabook.cn
完整代码: nc = new NetConnection(); nc.onStatus = function (info){ trace(info.code); if( info.code ==NetConnection.Connect.Success){ trace(接通); } }; nc.connect(rtmp://localhost/test1); 注意:默认

完整代码:

  1. nc = new NetConnection();  
  2. nc.onStatus = function(info) {  
  3.  trace(info.code);  
  4.  if (info.code == "NetConnection.Connect.Success") {  
  5.  trace("接通");  
  6.  }  
  7. };  
  8. nc.connect("rtmp://localhost/test1");  

注意:默认情况下服务器是允许你连接的,但只是默认,如果服务器拒绝你连接的话,上述代码就不好用了。怎么回事?我们看看连接的过程吧

连接过程

每当客户端试图连接服务器,一个NetConnection.connect(),服务器将会调用application.onConnect 来鉴定是不是允许客户端连接,onConnect()方法返回null 或不返回则将进入未决状态,直到onConnect方法中返回true或执行acceptConnection(client)则允许,返回false或执行rejectConnection(client)则拒绝,如图(从左往右看)

 

attachments/200708/29_150312_5.jpg

服务器文件是以.asc形式存在的,可以在test1文件夹里建一个main.asc 

  1. application.onConnect=function(client){  
  2. this.rejectConnection(client);  
  3. //this.acceptConnection(client)  
  4. }  

这样就拒绝连接了,动手试试,别忘了,服务器端改动的话,别忘了到fms2_console.swf去reload !不知道按哪个的到上边找,每当有客户端连接,那个reload按钮的界面就会出来哦。
检查是否uri错误
如果你的rtmp地址是从其他什么地方传过来的,可以顺便检查一下rtmp是否错误,下边代码如果地址是错误的就会trace出来 

  1. mync = new NetConnection();  
  2. mync.onStatus = function(info) {  
  3.  if (info.code == "NetConnection.Connect.Success") {  
  4.  trace("连接成功");  
  5.  }  
  6. };  
  7. //正确的uri  
  8. //uri = "rtmp://localhost/connect";  
  9. //错误的uri  
  10. uri = "rtmpppppp://localhost/connect";  
  11. if (mync.connect(uri, "N神")) {  
  12.  trace("尝试连接服务器中。。");  
  13. } else {  
  14.  trace("没有尝试连接服务器~是uri错误???");  

热门文章推荐

请稍候...

保利威视云平台-轻松实现点播直播视频应用

酷播云数据统计分析跨平台播放器