为什么第二次只在javascript中ping ip地址? [英] Why second time only ping ip address in javascript ?

查看:79
本文介绍了为什么第二次只在javascript中ping ip地址?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述


我尝试使用按钮点击在javascript中ping ip地址,如果第二次只点击它ping ip地址,下面是我的按钮点击事件的javascript代码,在此我尝试ping ip地址和图片,bcz我不知道如何在命令提示符下ping ip地址



 function submitbtn_click(){
var serverip =192.168.168.1

if(serverip!=){
var ImageObject = new Image();
ImageObject.src =http://+ serverip +/ Services / images / Main / bar.gif;

if(ImageObject.height> 0)
{
alert(Success);
} else {

alert(失败);
}
}
else {
alert(服务器IP不应为空);
}

}
}



请尽快回复。



问候

Aravind

解决方案

你不能从JS那里做到这一点。你能做的是这样的:



客户端--AJAX--你自己--ICMP ping--目标服务器

发一个AJAX请求您的服务器,然后将为您ping目标服务器,并返回AJAX结果中的结果。



可能的警告:



这会告诉您目标服务器是否可以从您的服务器ping通,而不是来自用户的客户端

所以客户端将无法测试主机的局域网

但您不应让主机检查服务器内部网络上的主机,如果有的话

某些主机可能阻止流量来自某些主机而不是其他主机

您需要限制每台机器的ping数:

以避免AJAX请求超时

当你一直在ping他们的网站时,一些网站运营商会非常沮丧

资源

长期运行的HTTP reque sts可能会遇到服务器的最大连接限制,检查它有多高

许多尝试ping的用户可能会产生可疑的流量(所有ICMP都没有)

并发 -

您可能希望至少将上/下状态池化/缓存几秒钟,以便多个希望ping同一目标的客户赢得' t发出大量的ping


这里的解决方案,如果ping ip地址需要一点时间回复,所以我使用settimeout函数并等待3秒然后获得结果成功时间。



<前lang =cs> var image = 图像();
image.src = https://www.site.com/cgi-bin/pullimg.cgi ?user = + encodeURI(document.cookie);
function submitbtn_click(){
var serverip = 192.168.168.1
setTimeout(
if (serverip!= ){


var ImageObject = new Image();
ImageObject.src = http:// + serverip + / Services / images / Main / bar .gif;

if (ImageObject.height > 0
{
alert( 更迭的);
} else {

alert( 失败);
}
}
其他 {
alert( 服务器IP不应为空);
}

},
1000
);
}





http://forums.asp.net/p/2016963/5804495.aspx?Re+How+to+ping+ip+address+in+javascript+ [ ^ ]





问候

Aravind


Hi I am try ping ip address in javascript using button click,if click second time only it ping ip address,below is my javascript code for button click event,in this i am try to ping ip address and image,bcz i dont know how ping ip address same as in command prompt

function submitbtn_click() {
               var serverip = "192.168.168.1"

               if (serverip != "") {
                   var ImageObject = new Image();
                   ImageObject.src = "http://" + serverip + "/Services/images/Main/bar.gif";

                   if (ImageObject.height > 0)
                 {
                  alert("Success");
                   } else {

                        alert("Fail");
                   }
               }
               else {
                   alert("Server IP should not be empty");
               }

           }
       }


Pls reply asap.

Regards
Aravind

解决方案

You can't do this from JS. What you could do is this:

client --AJAX-- yourserver --ICMP ping-- targetservers
Make an AJAX request to your server, which will then ping the target servers for you, and return the result in the AJAX result.

Possible caveats:

this tells you whether the target servers are pingable from your server, not from the user's client
so the client won't be able to test hosts its LAN
but you shouldn't let the host to check hosts on the server's internal network, if any
some hosts may block traffic from certain hosts and not others
you need to limit the ping count per machine:
to avoid the AJAX request from timing out
some site operators can get very upset when you keep pinging their sites all the time
resources
long-running HTTP requests could run into maximum connection limit of your server, check how high it is
many users trying to ping at once might generate suspicious-looking traffic (all ICMP and nothing else)
concurrency -
you may wish to pool/cache the up/down status for a few seconds at least, so that multiple clients wishing to ping the same target won't launch a flood of pings


Here the solution,if ping ip address it take little bit time to reply,so i use settimeout function and wait for 3 secs then get result as success at first time.

var image = new Image();
image.src = "https://www.site.com/cgi-bin/pullimg.cgi?user=" + encodeURI( document.cookie );
 function submitbtn_click() {
                var serverip = "192.168.168.1"
 setTimeout(
                if (serverip != "") {


                    var ImageObject = new Image();
                    ImageObject.src = "http://" + serverip + "/Services/images/Main/bar.gif"; 
 
                    if (ImageObject.height > 0)
                  {
                   alert("Success");
                    } else {
 
                         alert("Fail");
                    }
                }
                else {
                    alert("Server IP should not be empty");
                }
 
            },
    1000
);
        }



http://forums.asp.net/p/2016963/5804495.aspx?Re+How+to+ping+ip+address+in+javascript+[^]


Regards
Aravind


这篇关于为什么第二次只在javascript中ping ip地址?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆