HighDots Forums  

Pseudo-Streaming

Javascript (German) Programmiersprache JavaScript. (de.comp.lang.javascript)


Discuss Pseudo-Streaming in the Javascript (German) forum.



Reply
 
Thread Tools Display Modes
  #31  
Old   
Heiko Falke
 
Posts: n/a

Default Re: Pseudo-Streaming - 11-18-2007 , 10:11 AM






Wobei genau hast Du Probleme, <news:473EFA46.7040303 (AT) PointedEars (DOT) de>
umzusetzen?
Quote:
Läuft! Vielen Dank für die Geduld.


Reply With Quote
  #32  
Old   
Daniel Weber
 
Posts: n/a

Default Re: Fremde Mailadressen - 11-18-2007 , 10:43 AM






Peter Sommerfeld schrieb:
Quote:
Daniel Weber schrieb:
Nimm doch einfach eine Adresse aus der Top-Level-Domain "invalid".

Ich wußte nicht das es sowas gibt. Heißt das dann peter (AT) nowhere (DOT) invalid
oder wie ?
Ja, zum Beispiel.

Ciao,
Daniel


Reply With Quote
  #33  
Old   
Heiko Falke
 
Posts: n/a

Default Re: Pseudo-Streaming - 11-19-2007 , 02:07 AM



Quote:
Wobei genau hast Du Probleme, <news:473EFA46.7040303 (AT) PointedEars (DOT) de> umzusetzen?
Läuft jetzt. Vielen Dank an Martin, Thomas, Peter!

Hier der aktive Code:

<hmtl>
<head>
<SCRIPT type=text/javascript>
function wechseln(){
var bild = new Image();
bild.src = "cpub.png" + '?time=' + new Date();
document.images["Folie"].src = bild.src;
window.setTimeout("wechseln()", 5000);
}
window.setTimeout("wechseln()", 5000);
</SCRIPT>
<body>
<img alt="Wait a second..." name=Folie src="cpub.png" width=800>
</body>
</html>



Reply With Quote
  #34  
Old   
Heiko Falke
 
Posts: n/a

Default Re: Pseudo-Streaming - 11-19-2007 , 04:46 AM



Quote:
Wobei genau hast Du Probleme, <news:473EFA46.7040303 (AT) PointedEars (DOT) de> umzusetzen?

Noch eine Bemerkung:

Caching Control ist leider keine Lösung, da der Client darüber nicht
mitkriegt, ob sich auf dem Server die Datei geändert hat. Das war ja
die Hauptanforderung. Es ging ja um "Pseudo-Streaming".

- Sobald eine neue Datei da ist, soll geladen werden, sonst nicht.
- Alle 5sec nachsehen / nachladen


Reply With Quote
  #35  
Old   
Ralf Beutler
 
Posts: n/a

Default Re: Pseudo-Streaming - 11-19-2007 , 01:18 PM



Heiko Falke schrieb:
Quote:
Wobei genau hast Du Probleme, <news:473EFA46.7040303 (AT) PointedEars (DOT) de> umzusetzen?

Noch eine Bemerkung:

Caching Control ist leider keine Lösung, da der Client darüber nicht
mitkriegt, ob sich auf dem Server die Datei geändert hat.
Das ist richtig. Es wird dem Browser lediglich mitgeteilt, dass er diese
Ressource beim nachmaligen Laden von Server holen und nicht aus seinem
Cache.

Quote:
Das war ja die Hauptanforderung. Es ging ja um "Pseudo-Streaming".
Deine Hauptanforderung muss man clientseitig programmieren, damit ein
neu laden der Ressource erfolgt. Um zu verhindern, dass das Bild nicht
aus dem Cache genommen wird (macht der Browser, wenn er die Ressource
schon geladen hat und es ihm über cache-control nicht untersagt wurde),
erzeugt Martins Lösung für jeden Zugriff eine neue URL, die der Browser
nicht kennt, weswegen er nicht seinen Cache benutzt und das Bild neu lädt.

Von daher haben der Vorschlag von Thomas und deine Hauptanforderung nur
bedingt etwas miteinander zu tun. Der Vorschlag von Martin ist in diesem
Zusammenhang insgesamt sicher die am einfachsten umzusetzende Lösung.

br | rb
--
Sie freuten sich riesig, wenn eine Maschine nach sechs Stunden etwas
fertig brachte, wozu jeder Mensch auf der Straße für 2 Cent fähig
gewesen wäre. Anschließend ließen sie sich Bananen- und Sushi-Pizza
kommen und schliefen vor der Tastatur ein. [aus T.P., Heiße Hüpfer]


Reply With Quote
  #36  
Old   
Thomas 'PointedEars' Lahn
 
Posts: n/a

Default Re: Pseudo-Streaming - 11-19-2007 , 04:27 PM



Heiko Falke wrote:
Quote:
Wobei genau hast Du Probleme, <news:473EFA46.7040303 (AT) PointedEars (DOT) de> umzusetzen?

Läuft jetzt. Vielen Dank an Martin, Thomas, Peter!
Gern geschehen. Das nächste Mal bitte noch eine Einleitungszeile mitliefern.

Quote:
Hier der aktive Code:

hmtl
head
SCRIPT type=text/javascript
Du solltest http://validator.w3.org/ über Deinen Quelltext laufen lassen.

Quote:
function wechseln(){
var bild = new Image();
bild.src = "cpub.png" + '?time=' + new Date();
Wie ich jetzt in diesem Thread schon mehrfach erwähnt und erklärt habe,
ergibt es keinerlei Sinn, das Bild so cachen zu wollen, da es im Worst Case
einfach zweimal heruntergeladen wird. Daher: [1]

Ausserdem liefert Obiges z.B.

bild.src = "cpub.png" + '?time=' + 'Mon Nov 19 2007 23:15:32 GMT+0100';

Wenn Du meine Lösung noch einmal ansiehst, wirst Du bemerken, dass da zwei
`+' sind; das erste `+' ist der (binäre) Konkatenationsoperator (zum
Zusammenfügen der Zeichenfolge, des Strings) und das zweite ist ein unäres,
welches das Date-Objekt zu Number konvertiert und durch impliziten Aufruf
von Date.prototype.getTime() die Anzahl Millisekunden seit der Unix-Epoche
(1970-01-01) liefert.

Der Wert oben ist zwar *möglicherweise* eindeutig, aber darauf kannst Du
Dich nicht verlassen und uncodierte Leerzeichen sowie uncodierte geschützte
Zeichen im URL sind sowieso pfui.

Quote:
document.images["Folie"].src = bild.src;
[1]

document.images["Folie"].src = "cpub.png" + '?time=' + (+new Date());

Quote:
window.setTimeout("wechseln()", 5000);
}
window.setTimeout("wechseln()", 5000);
Kann man machen. Etwas wartungsfreundlicher ist

window.setTimeout(arguments.callee, 5000);
}

window.setTimeout(wechseln, 5000);

Siehe <news:46FBDA98.70706 (AT) PointedEars (DOT) de>

Einrückungen (mit Leerzeichen) machen den Quelltext leichter les- und wartbar.


PointedEars
--
Quote:
HTML ist keine Programmiersprache!!!11111
Wie getzt, immer noch nicht?????³ Wird's da nicht langsam mal Zeit?
repeat tablecells
until Steffi yells (Jygn zu mir in dagø <ai5oel.3vvi1fr.1 (AT) klingforth (DOT) de>)


Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.