| Autor | Zpráva | ||
|---|---|---|---|
| Enko Profil * |
#1 · Zasláno: 5. 3. 2012, 16:46:57
Ahoj,
potřebuji ověřovat dostupnost souboru nebo domény na jiném serveru v internetu. Vyplodil jsem toto: <script type="text/javascript">
function check_wan(){
if(window.XMLHttpRequest){
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else{
// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("HEAD", "/index.php",true);
xmlhttp.onreadystatechange=function(){
if(xmlhttp.readyState==4){
if(xmlhttp.status==200){alert("URL Exists!");}
else if (xmlhttp.status==404){alert("URL doesn't exist!");}
else{alert("Status is "+xmlhttp.status);}
}
}
xmlhttp.send(null);
}
</script>
Děkuji za každou pomoc |
||
| _es Profil |
Enko:
„Jenže to funguje jen při kontrole souborů na tom samém serveru.“ Áno, to je bezpečnostné obmedzenie. „Je nějaká možnost, jak kontrolovat dostupnost souborů na jiném serveru v internetu?“ Sú určité obmedzenejšie možnosti, napríklad pokúsiť sa stiahnuť súbor ako obrázok, JS skript či CSS štýl. Zaujímal by ma účel niečoho takého. Buď je ten súbor z iného servera treba a so súhlasom jeho vlastníka sa použije - ak to bezpečnostné obmedzenia umožňujú, alebo sa v opačných prípadoch nepoužije. Na čo zisťovať „dostupnosť“ cez JS? |
||
| Enko Profil * |
#3 · Zasláno: 5. 3. 2012, 17:23:36
Potřebuji ověřit dostupnost WAN sítě z Mikrotik routerboardu a protože to Mikrotik neumí, potřebuji to zkusit alespoň na straně klienta.
Jinak už jsem něco našel třeba zde http://james.padolsey.com/javascript/cross-domain-requests-with-jquery/ |
||
| _es Profil |
#4 · Zasláno: 5. 3. 2012, 17:37:55
Enko:
Najjednoduchšie bude načítavať JS súbor. JQuery je len obal okolo základných vecí, nejde s ním nič, čo by nešlo aj bez neho. |
||
| Enko Profil * |
#5 · Zasláno: 5. 3. 2012, 17:39:47
_es:
Popiš mi prosím, jak to přesně myslíš. |
||
| _es Profil |
#6 · Zasláno: 5. 3. 2012, 17:46:30
Enko:
„jak to přesně myslíš“ No dáš si do toho JS na inom serveri niečo také, aby bolo zistiteľné, že sa súbor načítal, napríklad definíciu nejakej premennej, alebo aj len: Do stránky na vhodné miesto: <script src="odkaz na súbor"></script> document.write("WAN sieť je dostupná") |
||
| Enko Profil * |
#7 · Zasláno: 5. 3. 2012, 18:10:04
Nemám možnost to otestovat, ale chápu li to správně, tak to bude nějak takto?
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta name="generator" content="PSPad editor, www.pspad.com">
<title></title>
<!-- v tomto souboru mam definovanou promenou x --!>
<script type="text/javascript" src="http://domena/js/var.js"></script>
<script type="text/javascript">
function check_wan(){
if(x){
document.write("Internet je dostupný!");
}
else{
document.write("Internet není dostupný!");
}
}
</script>
</head>
<body>
<script>
check_wan();
</script>
</body>
</html> |
||
| _es Profil |
#8 · Zasláno: 5. 3. 2012, 18:21:20
Enko:
„if(x){“ To pri neexistencii premennej „vyhodí“ chybu. try{x; document.write("Internet je dostupný!")}catch(e){document.write("Internet není dostupný!")} |
||
| Enko Profil * |
#9 · Zasláno: 5. 3. 2012, 18:27:02
_es:
Supr, aneb v jednoduchosti je krása! :) Děkuju |
||
| _es Profil |
#10 · Zasláno: 5. 3. 2012, 18:44:16
Enko:
Pri testovaní v [#8] ani nemusí mať premenná hodnotu, testuje sa len jej existencia, stačí aj var x;
|
||
| Enko Profil * |
#11 · Zasláno: 5. 3. 2012, 18:49:47
JJ, vím :)
|
||
|
Časová prodleva: 14 let
|
|||
0