【发布时间】:2023-03-19 23:48:01
【问题描述】:
我有一个使用 Python 和 Flask 编写的网络应用程序。此 Web 应用程序仅在用户连接到内部 VPN 时运行。现在假设用户已连接到 Internet 和 VPN,并且正在浏览 Web 应用程序并且他的 VPN 断开连接。在这种情况下,他将无法再访问 Web 应用程序。我想通过我的应用通知用户再次连接他的 VPN。我编写了一个 Javascript,其中我正在对应用程序进行 HEAD ajax 调用,并根据响应的状态判断他是否连接到 VPN。下面是两个函数。
function isConnectedToVpn(){
var xhr = new (window.ActiveXObject || XMLHttpRequest)("Microsoft.XMLHTTP");
var status;
xhr.open("HEAD", "//" + window.location.hostname , false);
try{
xhr.send();
return (xhr.status >= 200 && (xhr.status < 300 || xhr.status === 304));
}catch (error){
return false;
}
}
function isOnline()
{
return navigator.onLine;
}
现在我怎样才能让最终用户下载这个 JS,然后运行它直到他的整个会话,并在站点无法连接时提醒他。此外,例如,如果他连接到 VPN 并且应用程序中存在真正的问题,我将如何减少误报。任何指针都会很有用。
【问题讨论】:
标签: javascript python node.js web-applications vpn