/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
Kontrol af forbindelse til server.
Fra : Ukendt


Dato : 10-09-03 16:41

Hej NG.

Er det muligt i JavaScript, at lave en funktion der foretaget et "ping"
eller lignende til en server, for at se om der er forbindelse, og herefter
opdatere en bool-variabel med svaret.

Kan ikke rigtig finde noget præcist om det.

MVH. Leif.



 
 
Martin Hintzmann And~ (10-09-2003)
Kommentar
Fra : Martin Hintzmann And~


Dato : 10-09-03 16:53

Leif wrote:
> Er det muligt i JavaScript, at lave en funktion der foretaget et "ping"
> eller lignende til en server, for at se om der er forbindelse, og herefter
> opdatere en bool-variabel med svaret.

Ja, med mhaRemoteServer, hvis du har mulighed for at ligge en lille js-fil på den server du
ønsker at "ping'e".

http://users.cybercity.dk/~dsl58854/articles/mhaRemoteServer/readme.html

Hintzmann c",)



Lasse Reichstein Nie~ (10-09-2003)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 10-09-03 17:12

"Leif" <?> writes:

> Er det muligt i JavaScript, at lave en funktion der foretaget et "ping"
> eller lignende til en server, for at se om der er forbindelse, og herefter
> opdatere en bool-variabel med svaret.

Du kan prøve at hente et billede fra serveren, og se om det lykkes:

function ping(url, responseFunction) {
var img = new Image();
img.onerror = function (){responseFunction(false);};
img.onload = function (){responseFunction(true);};
img.src = url;
}

Denne funktion skal have en url til et billede på serveren man vil
tjekke, og en funktion som skal kaldes med en boolean der siger om det
virkede. Man kan ikke bare returnere svaret direkte, fordi man skal
vente på at billedet bliver loadet (eller ikke bliver det).

/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
Art D'HTML: <URL:http://www.infimum.dk/HTML/randomArtSplit.html>
'Faith without judgement merely degrades the spirit divine.'

Ukendt (10-09-2003)
Kommentar
Fra : Ukendt


Dato : 10-09-03 17:16

Tak for hurtigt svar begge to, jeg kigger på begge forslag.

MVH. Leif.


"Lasse Reichstein Nielsen" <lrn@hotpop.com> skrev i en meddelelse
news:brtswrm2.fsf@hotpop.com...
> "Leif" <?> writes:
>
> > Er det muligt i JavaScript, at lave en funktion der foretaget et "ping"
> > eller lignende til en server, for at se om der er forbindelse, og
herefter
> > opdatere en bool-variabel med svaret.
>
> Du kan prøve at hente et billede fra serveren, og se om det lykkes:
>
> function ping(url, responseFunction) {
> var img = new Image();
> img.onerror = function (){responseFunction(false);};
> img.onload = function (){responseFunction(true);};
> img.src = url;
> }
>
> Denne funktion skal have en url til et billede på serveren man vil
> tjekke, og en funktion som skal kaldes med en boolean der siger om det
> virkede. Man kan ikke bare returnere svaret direkte, fordi man skal
> vente på at billedet bliver loadet (eller ikke bliver det).
>
> /L
> --
> Lasse Reichstein Nielsen - lrn@hotpop.com
> Art D'HTML: <URL:http://www.infimum.dk/HTML/randomArtSplit.html>
> 'Faith without judgement merely degrades the spirit divine.'



Ukendt (10-09-2003)
Kommentar
Fra : Ukendt


Dato : 10-09-03 17:53

Jeg er lidt i tvivl om funktionen "responseFunction"

Er det en funktion jeg skal oprette, eller er den en slags inline funktion,
der ikke kræver yderligere.

MVH Leif.

"Lasse Reichstein Nielsen" <lrn@hotpop.com> skrev i en meddelelse
news:brtswrm2.fsf@hotpop.com...
> "Leif" <?> writes:
>
> > Er det muligt i JavaScript, at lave en funktion der foretaget et "ping"
> > eller lignende til en server, for at se om der er forbindelse, og
herefter
> > opdatere en bool-variabel med svaret.
>
> Du kan prøve at hente et billede fra serveren, og se om det lykkes:
>
> function ping(url, responseFunction) {
> var img = new Image();
> img.onerror = function (){responseFunction(false);};
> img.onload = function (){responseFunction(true);};
> img.src = url;
> }
>
> Denne funktion skal have en url til et billede på serveren man vil
> tjekke, og en funktion som skal kaldes med en boolean der siger om det
> virkede. Man kan ikke bare returnere svaret direkte, fordi man skal
> vente på at billedet bliver loadet (eller ikke bliver det).
>
> /L
> --
> Lasse Reichstein Nielsen - lrn@hotpop.com
> Art D'HTML: <URL:http://www.infimum.dk/HTML/randomArtSplit.html>
> 'Faith without judgement merely degrades the spirit divine.'



Lasse Reichstein Nie~ (10-09-2003)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 10-09-03 20:57

"Leif" <?> writes:

> Jeg er lidt i tvivl om funktionen "responseFunction"
>
> Er det en funktion jeg skal oprette, eller er den en slags inline funktion,
> der ikke kræver yderligere.

Det er en funktion du skal oprette (med et eller andet navn) og sende
med som parameter til funktionen.

Et eksempel på brugen:
---
// hvad vi gør med svaret:
function myResponseHandler(up) {
if (up) {
alert("Serveren er oppe");
} else {
alert("Serveren svarede ikke");
}
}

// Tjek om min server svarer (det billede ved jeg findes):
ping("http://www.infimum.dk/privat/PicA.png",myResponseHandler);
---

Det vigtige er at "ping" ikke returnerer et svar med det samme. Det
kan den ikke, da kommunikationen med serveren er asynkron. I stedet
sender man en "call-back" funktion med, som så bliver kaldt når
vi har svaret.

/L 'Continuation Passing Style Ekspert'
--
Lasse Reichstein Nielsen - lrn@hotpop.com
Art D'HTML: <URL:http://www.infimum.dk/HTML/randomArtSplit.html>
'Faith without judgement merely degrades the spirit divine.'

Ukendt (10-09-2003)
Kommentar
Fra : Ukendt


Dato : 10-09-03 21:42

Puha, det er svært.


"Lasse Reichstein Nielsen" <lrn@hotpop.com> skrev i en meddelelse
news:pti8zab2.fsf@hotpop.com...
> "Leif" <?> writes:
>
> > Jeg er lidt i tvivl om funktionen "responseFunction"
> >
> > Er det en funktion jeg skal oprette, eller er den en slags inline
funktion,
> > der ikke kræver yderligere.
>
> Det er en funktion du skal oprette (med et eller andet navn) og sende
> med som parameter til funktionen.
>
> Et eksempel på brugen:
> ---
> // hvad vi gør med svaret:
> function myResponseHandler(up) {
> if (up) {
> alert("Serveren er oppe");
> } else {
> alert("Serveren svarede ikke");
> }
> }

Jeg har nu i med head indsat følgende 2 funktioner:

function ping(url, responseHandler) {
var img = new Image();
img.onerror = function (){responseHandler(false);};
img.onload = function (){responseHandler(true);};
img.src = url;
}

function responseHandler(up) {
if (up) {
alert("Serveren er oppe");
} else {
alert("Serveren svarede ikke");
}
}

Og i min body indsat følgende funktionskald:

<body onload="ping('http://192.168.0.98:8088/logo.gif',
responseHandler());">

Men selv om serveren faktisk er online, får jeg svar, at den ikke svarer,
samt et scriptfejl på et manglende objekt.??

Så jeg mangler vist at tilrette 'noget'.

Mvh. Leif.


>
> // Tjek om min server svarer (det billede ved jeg findes):
> ping("http://www.infimum.dk/privat/PicA.png",myResponseHandler);
> ---
>
> Det vigtige er at "ping" ikke returnerer et svar med det samme. Det
> kan den ikke, da kommunikationen med serveren er asynkron. I stedet
> sender man en "call-back" funktion med, som så bliver kaldt når
> vi har svaret.
>
> /L 'Continuation Passing Style Ekspert'
> --
> Lasse Reichstein Nielsen - lrn@hotpop.com
> Art D'HTML: <URL:http://www.infimum.dk/HTML/randomArtSplit.html>
> 'Faith without judgement merely degrades the spirit divine.'



Knud Gert Ellentoft (10-09-2003)
Kommentar
Fra : Knud Gert Ellentoft


Dato : 10-09-03 22:54

"Leif" <?> skrev :

>Puha, det er svært.
>(+ megalangt bundcitat)

Næh, det er såmænd ikke så svært, det er blot at klippe det du
ikke svarer på fra og så svare under det citerede.

http://www.usenet.dk/netikette/citatteknik.html

Det vil gøre mange glade - tak.


med venlig hilsen
Knud
--
Når der svares på et indlæg, svar venligst under det citerede
og skær venligst det væk, du ikke svarer på.
Du kan læse mere om de danske nyhedsgrupper på http://www.usenet.dk
http://home13.inet.tele.dk/smedpark

Lasse Reichstein Nie~ (10-09-2003)
Kommentar
Fra : Lasse Reichstein Nie~


Dato : 10-09-03 23:16

"Leif" <?> writes:

> Puha, det er svært.

At smide rundt med funktioner kan tage pippet fra de fleste. Jeg har
mange års øvelse :)

....
> Og i min body indsat følgende funktionskald:
>
> <body onload="ping('http://192.168.0.98:8088/logo.gif',
> responseHandler());">

Du skal ikke have "()" efter responseHandler her. Det er funktionen
selv der skal sendes med som argument. Med "()" kalder du funktionen
og sender dens returværdi med som argument (og det er værdien
"undefined", da funktionen ikke returnerer noget).

> Men selv om serveren faktisk er online, får jeg svar, at den ikke svarer,

Det er resultatet af det kald ud laver.

> samt et scriptfejl på et manglende objekt.??

Og det er resultatet af at ping forsøger at kalde det den tror er en
funktion, men som er værdien "undefined".

/L
--
Lasse Reichstein Nielsen - lrn@hotpop.com
Art D'HTML: <URL:http://www.infimum.dk/HTML/randomArtSplit.html>
'Faith without judgement merely degrades the spirit divine.'

Ukendt (11-09-2003)
Kommentar
Fra : Ukendt


Dato : 11-09-03 07:49

Så virker det.

Tak for hjælpen.

Mvh. Leif.

"Lasse Reichstein Nielsen" <lrn@hotpop.com> skrev i en meddelelse
news:8yowz3vg.fsf@hotpop.com...
> "Leif" <?> writes:
>
> > Puha, det er svært.
>
> At smide rundt med funktioner kan tage pippet fra de fleste. Jeg har
> mange års øvelse :)
>
> ...
> > Og i min body indsat følgende funktionskald:
> >
> > <body onload="ping('http://192.168.0.98:8088/logo.gif',
> > responseHandler());">
>
> Du skal ikke have "()" efter responseHandler her. Det er funktionen
> selv der skal sendes med som argument. Med "()" kalder du funktionen
> og sender dens returværdi med som argument (og det er værdien
> "undefined", da funktionen ikke returnerer noget).
>
> > Men selv om serveren faktisk er online, får jeg svar, at den ikke
svarer,
>
> Det er resultatet af det kald ud laver.
>
> > samt et scriptfejl på et manglende objekt.??
>
> Og det er resultatet af at ping forsøger at kalde det den tror er en
> funktion, men som er værdien "undefined".
>
> /L
> --
> Lasse Reichstein Nielsen - lrn@hotpop.com
> Art D'HTML: <URL:http://www.infimum.dk/HTML/randomArtSplit.html>
> 'Faith without judgement merely degrades the spirit divine.'



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408926
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste