FMS第一天:NetConnection.Connect系列问题如何解决
2013-11-07 23:17
281 查看
按照闪闪威廉@nju 的开发者向导进行第一个HelloWorld实验,结果就遇到了NetConnection.Connect系列的问题,上网搜了一下,用如下方法解决了几个问题:
1、NetConnection.Connect.Rejected&Failed
通过NetConnection连接FMS服务器的时候,连接状态总是返回“NetConnection.Connect.Rejected”这样的状态结果,然后接着还有会有一个“NetConnection.Connect.Failed”状态,是什么原因造成这样的错误的呢?
第一个错误是访问FMS服务器的权限问题,如果FMS没有开设足够的访问权限,通常在访问FMS的客户端都会接受到这样一个异常状态。第二个错误又是怎么产生的呢?这还是又访问权限引起,当客户端没有主够的权限访问FMS服务器,就将返回“NetConnection.Connect.Rejected”状态并自动断开与FMS服务器的连接,“NetConnection.Connect.Failed”状态本身是由于连接服务器失败产生,而这里是因为权限问题而引发的。
怎么来解决这个问题呢?如果你是一个技术专研者,如果又你赶兴趣的技术在你面前,你首先会做什么?查看官方提供的文档?实例代码?还是什么? OK,其实要解决这个问题很简单,在FMS服务器安装好后的目录下有一个"applications"目录,里面有两个FMS默认安装的FMS服务器(live和vod),随便打开一个默认安装然后打开里面的"readme.txt"文件会看到下面的字样:
================================================================
Deploying an unsigned vod service
================================================================
1. Create a new folder in the {FMS-Install-Dir}/applications folder.
2. If you are replacing the default Adobe signed live service, back up
the following files:
* main.far
* Application.xml
* allowedHTMLDomains.txt
* allowedSWFDomains.txt
3. Copy files from {FMS-Install-Dir}/samples/applications/vod to the Directory you created in step 1.
现在你知道怎么解决上面出现的问题了吗??将这main.far、Application.xml、allowedHTMLDomains.txt和allowedSWFDomains.txt这四个文件复制到你创建的FMS服务器目录下就解决了,运行实例程序,然后可以通过FMS的管理控制台查看到详细的连接信息。
我通常是使用的FMS安装目录下的fms_adminConsole.swf 来查看连接信息,也可以使用FMSfms_adminConsole.htm查看。
2、如何设置FMS的权限
在服务器端的应用程序文件夹(默认位置在<FMS_Installation_Dir>/applications /live),在这个文件夹下面有一个main.far,main.far是个压缩文件(可以用winrar解压),解压后里面有两个文件 main.asc 和 Application.xml, 打开Application.xml,代码如下:
<Application>
<SharedObjManager>
<ClientAccess override="no">false</ClientAccess>
</SharedObjManager>
<StreamManager>
<StreamRecord override="no">false</StreamRecord>
</StreamManager>
</Application>
默认是SharedObject远程共享对象和StreamRecord录制都不允许的。
Application.xml改成如下:
<Application>
<SharedObjManager>
<ClientAccess override="yes">true</ClientAccess>
</SharedObjManager>
<StreamManager>
<StreamRecord override="yes">true</StreamRecord>
</StreamManager>
</Application>
保存之后再打包一下,替换main.far,OK!问题解决了。
3、另附各种NetConnection.Connect的几种错误
1、NetConnection.Call.Failed Error
NetConnection.call() 调用服务器端方法失败。返回的info对象包含一个具体的调用失败说明。for in一下可以看到。
2、NetConnection.Connect.AppShutdown Error
服务器端应用程序因为一些原因被关闭(过度占用server端资源),或者服务器已经被关闭。
3、NetConnection.Connect.Closed Status
连接中断。
4、NetConnection.Connect.Failed Error
连接失败。如FMS 没有启动。
5、NetConnection.Connect.InvalidApp Error
targetURI中rtmp://[ip或domain]/[appName]
其中appName不存在。
6、NetConnection.Connect.Rejected Error
连接被拒绝 原因:
targetURI指定的application不充许client连接,或者传递给应用程序的参数不对,也可能是server应用程序直接拒绝连接(可以在appName文件夹中写一个ASC文件做到)
这时,info对象有一个application属性,包含服务器方法application.rejectConnection()的返回值。
client在被拒绝后会马上再收到一个NetConnection.Connect.Closed的信息。
7、NetConnection.Connect.Success Status
连接成功。
1、NetConnection.Connect.Rejected&Failed
通过NetConnection连接FMS服务器的时候,连接状态总是返回“NetConnection.Connect.Rejected”这样的状态结果,然后接着还有会有一个“NetConnection.Connect.Failed”状态,是什么原因造成这样的错误的呢?
第一个错误是访问FMS服务器的权限问题,如果FMS没有开设足够的访问权限,通常在访问FMS的客户端都会接受到这样一个异常状态。第二个错误又是怎么产生的呢?这还是又访问权限引起,当客户端没有主够的权限访问FMS服务器,就将返回“NetConnection.Connect.Rejected”状态并自动断开与FMS服务器的连接,“NetConnection.Connect.Failed”状态本身是由于连接服务器失败产生,而这里是因为权限问题而引发的。
怎么来解决这个问题呢?如果你是一个技术专研者,如果又你赶兴趣的技术在你面前,你首先会做什么?查看官方提供的文档?实例代码?还是什么? OK,其实要解决这个问题很简单,在FMS服务器安装好后的目录下有一个"applications"目录,里面有两个FMS默认安装的FMS服务器(live和vod),随便打开一个默认安装然后打开里面的"readme.txt"文件会看到下面的字样:
================================================================
Deploying an unsigned vod service
================================================================
1. Create a new folder in the {FMS-Install-Dir}/applications folder.
2. If you are replacing the default Adobe signed live service, back up
the following files:
* main.far
* Application.xml
* allowedHTMLDomains.txt
* allowedSWFDomains.txt
3. Copy files from {FMS-Install-Dir}/samples/applications/vod to the Directory you created in step 1.
现在你知道怎么解决上面出现的问题了吗??将这main.far、Application.xml、allowedHTMLDomains.txt和allowedSWFDomains.txt这四个文件复制到你创建的FMS服务器目录下就解决了,运行实例程序,然后可以通过FMS的管理控制台查看到详细的连接信息。
我通常是使用的FMS安装目录下的fms_adminConsole.swf 来查看连接信息,也可以使用FMSfms_adminConsole.htm查看。
2、如何设置FMS的权限
在服务器端的应用程序文件夹(默认位置在<FMS_Installation_Dir>/applications /live),在这个文件夹下面有一个main.far,main.far是个压缩文件(可以用winrar解压),解压后里面有两个文件 main.asc 和 Application.xml, 打开Application.xml,代码如下:
<Application>
<SharedObjManager>
<ClientAccess override="no">false</ClientAccess>
</SharedObjManager>
<StreamManager>
<StreamRecord override="no">false</StreamRecord>
</StreamManager>
</Application>
默认是SharedObject远程共享对象和StreamRecord录制都不允许的。
Application.xml改成如下:
<Application>
<SharedObjManager>
<ClientAccess override="yes">true</ClientAccess>
</SharedObjManager>
<StreamManager>
<StreamRecord override="yes">true</StreamRecord>
</StreamManager>
</Application>
保存之后再打包一下,替换main.far,OK!问题解决了。
3、另附各种NetConnection.Connect的几种错误
1、NetConnection.Call.Failed Error
NetConnection.call() 调用服务器端方法失败。返回的info对象包含一个具体的调用失败说明。for in一下可以看到。
2、NetConnection.Connect.AppShutdown Error
服务器端应用程序因为一些原因被关闭(过度占用server端资源),或者服务器已经被关闭。
3、NetConnection.Connect.Closed Status
连接中断。
4、NetConnection.Connect.Failed Error
连接失败。如FMS 没有启动。
5、NetConnection.Connect.InvalidApp Error
targetURI中rtmp://[ip或domain]/[appName]
其中appName不存在。
6、NetConnection.Connect.Rejected Error
连接被拒绝 原因:
targetURI指定的application不充许client连接,或者传递给应用程序的参数不对,也可能是server应用程序直接拒绝连接(可以在appName文件夹中写一个ASC文件做到)
这时,info对象有一个application属性,包含服务器方法application.rejectConnection()的返回值。
client在被拒绝后会马上再收到一个NetConnection.Connect.Closed的信息。
7、NetConnection.Connect.Success Status
连接成功。
相关文章推荐
- java.net.ConnectException: Connection refused问题解决办法
- java.net.ConnectException: Connection refused问题解决办法
- 解决远程连接FMS服务器报错 NetConnection.Connect.Failed
- hadoop的"mapred.ReduceTask: java.net.ConnectException: Connection timed out"问题解决
- java.net.ConnectException: Connection refused问题解决办法
- iOS指南系列:如何解决奔溃问题-关于内存访问续
- [VB.NET]请教一下如何解决My.Computer.FileSystem.GetFiles终于到的权限问题
- 如何解决ASP.NET中中文不能正常显示问题
- 在ubuntu中配置SSH(解决connect to host localhost port 22: Connection refused问题)
- 如何解决VS2010 MySql Connect C 链接mysql:error LNK2019: 无法解析外部符号的问题
- 如何解决RK3168或者RK系列MASKROM的问题
- [每天解决一问题系列 - 0008] 关于.net framework 路径最大长度的问题
- 【原创】构建高性能ASP.NET站点 第七章 如何解决内存的问题(前篇)—托管资源优化—垃圾回收机制深度剖析
- 如何解决ADO.NET访问Access数据库出现"操作必须使用一个可更新的查询"的问题
- telnet mysql时出现:is not allowed to connect to this MySQL serverConnection closed by foreign host问题的解决
- iOS指南系列:如何解决奔溃问题-关于内存访问续2
- 方法:如何解决NetShareEnum返回ERROR_NO_UNICODE_TRANSLATION(1113)的问题
- 玩转CSLA.NET小技巧系列一:跳转页面丢失session,如何解决
- 【原创】如何解决java.net.SocketException 异常问题
- asp.net mvc 表单重复提交问题。如何解决呀?