检查是否仍然使用Javascript连接到主机

检查是否仍然使用Javascript连接到主机,javascript,greasemonkey,Javascript,Greasemonkey,在某些地方,有一种策略需要用户单击按钮继续以进入例如音乐流媒体网站。 假设我想使用此网站的时间超过此政策接受的时间。一段时间后,音乐停止播放并刷新网页-策略要求您再次单击继续,即使您尚未离开该页面 我想制作一个脚本,检查连接是否仍然存在,但不刷新网站(因为它播放音乐) 我已经创建了一个脚本,它将单击继续,但不知道如何(如果可能的话)检查连接,如果连接中断,然后刷新网站并单击继续 用GreaseMonkey可以吗 我进去 脚本为我单击继续 我听音乐 脚本正在检查连接 如果连接正常,请转至3 刷

在某些地方,有一种策略需要用户单击按钮
继续
以进入例如音乐流媒体网站。
假设我想使用此网站的时间超过此政策接受的时间。一段时间后,音乐停止播放并刷新网页-策略要求您再次单击
继续
,即使您尚未离开该页面

我想制作一个脚本,检查连接是否仍然存在,但不刷新网站(因为它播放音乐)

我已经创建了一个脚本,它将单击
继续
,但不知道如何(如果可能的话)检查连接,
如果连接中断
,然后刷新网站并单击
继续

用GreaseMonkey可以吗

  • 我进去
  • 脚本为我单击
    继续
  • 我听音乐
  • 脚本正在检查连接
    • 如果连接正常,请转至3
  • 刷新网站
  • 去2号

  • 单击脚本:

    if (document.title == 'Click continue')
    {
      var a = document.getElementById('continue-text');
      a.children[1].click();
    
    } 如果没有策略,则返回的页面为:
    200正常318毫秒

    如果策略继续,则返回:

    200毫秒

    您可以这样检查连接:

    function checkConnection() {
        var xmlhttp;
    
        if (window.XMLHttpRequest) {
            // code for IE7+, Firefox, Chrome, Opera, Safari
            xmlhttp = new XMLHttpRequest();
        } else {
            // code for IE6, IE5
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
    
        xmlhttp.onreadystatechange = function() {
            if (xmlhttp.readyState == XMLHttpRequest.DONE ) {
               if(xmlhttp.status == 200){
                   // this might need some customisation:
                   var connected = document.getElementById("id_of_the_continue_button") ? true : false;
                   if (!connected) {
                       reconnect();
                   }
               }
               else {
                   reconnect();
               }
            }
        }
        // here you'll need a relevant url:
        xmlhttp.open("GET", "http://deezer.com/", true);
        xmlhttp.send();
    }
    

    步骤4的邮政编码。他们对此有API吗?步骤4。是丢失的代码。没有API,我相信这是专门为了让某人活着而做的。是不是有一些东西像你请求一些url,你会看到401而不是200?如果我在一段时间后请求,会显示不同的页面。但是页面不会自动重新加载。我不确定这是否适用于我的案例。我相信该网站不会返回400,因为另一个网站将加载而不是这个。但是我明天会检查这个。那你为什么写:“如果我在一段时间后请求,会显示不同的页面。”?一个页面不会否定另一个页面。URL保持
    http://deezer.com/
    但是有不同的内容,要求您单击
    继续
    然后重定向到所需的网站。因此,您应该检查继续按钮的id。这正是我的意思。好吧,让我们看看它是否有效。我需要再等一个小时,因为周期约为1小时