我有一个Adobe Air桌面应用程序,最近用于一个事件,当使用google.com
作为一个轮询URL时,成千上万的人同时使用它开始获取失败的网络检查。让每个应用程序每3秒检查一次该URL,大约10分钟后,每个应用程序开始被重定向到Google上的验证页面,要求用户证明它们不是显然无法看到的机器人,因此所有用户被告知他们没有互联网。我已经在使用Akamai的高级流媒体插件(基于OSMF [使用NetStream])进行视频流媒体。有没有更好的方法来检查网络连接(最好只使用现有的NetStream对象)。谷歌阻止Adobe Air大规模网络检查
下面是网络监控现有代码:
public function checkNetwork(url:String):void {
var urlRequest:URLRequest = new URLRequest(url);
urlRequest.method = "GET";
urlMonitor = new URLMonitor(urlRequest);
urlMonitor.addEventListener(StatusEvent.STATUS,onStatusChange);
urlMonitor.pollInterval = 3000;
urlMonitor.start();
}
private function onStatusChange(event:StatusEvent):void {
if(urlMonitor.available) {
isNetworkDown = false;
dispatchEvent(new Event("NetworkManager.NETWORK_UP"));
}
else {
isNetworkDown = true;
dispatchEvent(new Event("NetworkManager.NETWORK_DOWN"));
}
}
因此,投票“google.com”背后的推理是看他们是否有互联网连接? – Ronnie
是的,我宁愿通过OSMF使用现有的HTTP请求 – nathanjosiah
如果OSMF流产生一个错误,你可以假设他们失去了连接或看我的答案 – Ronnie