有没有在flex中获取服务器的状态?

时间:2011-03-24 09:47:27

标签: javascript ajax flex

我们有一个应用程序,其中在flex侧按钮单击重新启动服务器并使客户端注销。注销后,如果用户登录,则会出现错误,因为服务器暂时不启动。在我们的场景中,服务器需要时间才能重启(因为备份)。我希望用户在尝试登录时收到有关Web服务器状态的通知。

有没有办法监控Flex端服务器的状态。或javascript是否有助于查找服务器是否已启动?。

此外,我尝试使用外部接口重定向到html页面,但我不确定当服务器变为活动状态时如何自动将其重定向到swf文件。服务器停机时间未知(可能是2或5或10分钟。 )

那么什么是最好的方法。非常感谢任何帮助。

2 个答案:

答案 0 :(得分:1)

使用URLLoader,您可以尝试在服务器上下载文件并收听ioError或httpStatus。

private var testLoader:URLLoader;
private var testRequest:URLRequest;

...

testRequest = new URLRequest("http://server/testFile");
testLoader = new URLLoader(request);
testLoader.addEventListener(HTTPStatusEvent.HTTP_STATUS, onStatus);

private function onStatus(HTTPStatusEvent:event):void
{
    //test the status, if the server is up, reconnect, else...
    testLoader.load(testRequest);
}

答案 1 :(得分:0)

有趣的问题。当你的意思是重启时,你的意思是只是像Apache这样的特定服务,还是像服务器的实际重启一样?我问,因为这意味着不同的情况。我不确定你在做什么,但我会假设你正在重启服务器。

这里的一个问题是客户端注销,这是我们不想要的。我要做的是拥有第二台服务器,它的唯一目的是在另一台服务器上进行身份验证和提供状态。这是一个“中间人”方法,此服务器不会将您注销,但所有调用都会重定向到另一台服务器。

从Flex方面,您可以让它调用“中间人”来查看状态。根据您使用的技术(轮询与推送),您可以获取所需的数据并向用户显示状态。

相关问题