[Playlisten] [Impressum und Datenschutzerklärung]
Per JavaScript mit dem Server kommunizieren: Fetch und Server-Sent Events
Tempo:
Anklickbares Transkript:
Videos – habe ich was gesagt zu XML HTTP Request RegEx, – wie es mal geheißen hat, die klassische Art mit dem Server zu kommunizieren, – jetzt geht's – mir ein paar Update – machen, die schon seit ein paar Jahren gehen und ein bisschen hübscher – sind schlanker – sind als das klassische – schwieriges Wort – ist, ich möchte was auf diese Seite drauf holen vom Server nachträglich – etwas auf die Seite drauf holen, – ich gehe jetzt Noch – rein baue, – ich in diesen Text Den – erstmal ihr lasst ihr dass ich da nachträglich – noch neuen – text Reinhold, das wird ihr z.b. Sein, dass die Updates holen von einer Maschine – sie nach – Minuten doch mal was neues holen und 18 Minuten – was da jetzt passiert, also wir benennen den Sinnvollerweise – auftut zugreifen zu können und – jetzt will ich einen Script bauen, das vom Server – Eine Datei holt. – kann man anfangen, das kann man natürlich besser machen, aber wenn meine Datei holen kann – noch andere Sachen holen Livedaten holen. – diesem Text Rein – simpel, – möchte in den Text – rein holen und damit das jetzt ausgelöst wird, baue ich noch ein Button dazu so wir bauen noch einen Button und Natsu, den – muss man ja in HTML ungeschickterweise – sagen, das ist vom Typ button. – werde ich sehen, was du sonst noch sein könnte auf den Button soll – Hole z.b. Holen! – Der – Button der sollte auch noch mal die haben, damit ich mit ihm reden kann in meinem JavaScript – mir aus meinen. – der Button geklickt wird, möchte ich vom Server was nachholen und das hier unten in den Der – jetzt noch leer ist reinschreiben – du den heller nicht – extra Datei ausnahmsweise, – sie übersichtlich bleibt hier in den Hintern. – warte, bis die gesamte Seite geladen ist und dann installiere – ich meine ganze Logik, – die Seite ist geladen, wenn window. – möchte ich folgende Funktion aufrufen. – möchte den Button verdrahten mein Button, wenn das gesamte – geladen – ist, gibt's diese Variable mein Platten – sie könne mich unten einmal angekommen. Ist – der Browser mehr durch gekommen und hat meinen Button angelegt als Variable, – mein Button geklickt wird on click – eine Funktion aufgerufen werden, die dann Daten vom Server holt und die in den Rein – schmeiß. – sieht das bisher aus und – sieht schon haarsträubend Ausfall Funktionen ineinander, wenn – die Seite geladen ist, wird die äußere Funktion aufgerufen, wenn – die aufgerufen wird verdrahtet, – die click Ereignis von den Button mit der Funktion sind da jetzt noch zu schreiben ist – die Funktion die da jetzt noch zu schreiben ist, die soll – die Datei vom Server holen und es ist inzwischen – vielen aber nicht allen Browsern in den meisten aktuellen – Browsern – ist das ganz banal die können einfach sagen fetch hole eine Datei – sagen welche Datei geholt werden soll geben wir die irgendeinen Namen. – von mir aus meine Dateien. – Datei. Txt – stelle ich jetzt im Server in dasselbe Verzeichnis wie die HTML-Datei, – wenn – das nicht dasselbe. Verzeichnis wäre müsste ich hier noch großartig vorne alles mögliche angeben, – ich dahin komme. – ich brauche so eine Datei meine Datei, die soll gleich geholt werden – selben Verzeichnis erzeuge – ich dir jetzt – die HTML-Datei – sollte heißen, meine – Datei – unterschreibe – ich irgendwas rein. – kann auch nicht schaden. – speichere ich jetzt aber Vorsicht speichern unter sinnvollerweise – speichere – ich die als UTF-8 – codiert nicht als an sie kodiert an, – sie ist die alte Art für Windows die Umlaute und so weiter hatte das – führt heute eher zu Verwirrung utf-8 ist der Standard nehmen Sie UTF-8 Codierung, – sonst sind die Umlaute – ihre kyrillischen Zeichen ist recht im Eimer und die chinesischen Zeichen sowieso im Eimer utf-8 – ist der Stand der Dinge speichern. – Textdatei sogleich – nachgeladen – werden, sie – können sich vorstellen, wenn die Textdateien nachgeladen werden kann. Ok, dann können noch andere Sachen nachgeladen – werden, – alle Daten Livedaten nachgeladen – werden und er nicht ist schon mal das ist – der Rest nicht schwierig. – schwierig ist ist das Wetter jetzt noch nicht fertig? Sind – fetch tut? – Es ziemlich raffiniert – ist fängt an im Hintergrund die Datei zu laden. – Und muss uns jetzt irgendwie mitteilen, wenn ich fertig geworden ist oder wenn das fehlgeschlagen ist, – fertig zurückliefert – sich ein Promise ein Versprechen nicht mehr sich zu großartig in die Technik reingehen. – kriegen ein Versprechen zurück, wir kriegen nicht die Datei sofort zurück, wir kriegen ein Versprechen zurück und müssen jetzt was mit diesem Versprechen anfangen – das sieht dann so aus, wenn – das Versprechen – Das sage ich Ihnen damit Designer gesehen haben wieder, was kommt heute aussieht anders, – als ich das den alten Videos erklärt habe, – dieses Versprechen positiv oder negativ beendet worden ist, wenn es geklappt hat, das mit dem Versprechen – möge bitte eine – andere Funktion aufgerufen werden. Die steht jetzt in den von dem denn drin, ich überlege, das schreibe ich in eine Zeile sollte nicht mehr lesen. – wenn es geklappt hat, danach tue das was sie jetzt als Funktion drinnen steht. Hier kommt wieder eine Funktion rein ist eine Funktion in einer Funktion in einer Funktion JavaScript aus – den Funktionen muss man sich dran gewöhnen, was diese Funktion bekommt. – Ist – von dem fetch response heißt – die Variate – kann die Funktion was mit der Antwort machen. – die da drinnen steht nämlich – die Antwort die dann kommt es bei uns sehen, wieso Studio Code ist der doch sehr hilfreich an der Stelle, was ist alles zu viert, – möchte von – der Antwort die da kommt, da kommt kommt möchte ich den Text haben. Das ist eine Methode Text – dass ich noch mehr übergeben – so. – sie ganz mit gelesen haben eben haben sie gesehen Text – ist wieder ein Promise – ein Versprechen. – Das – sind ganz neue Begriffe plötzlich – hatten wir noch nicht – liefert einsprechen zurück. Das kann fehlschlagen oder gelingen. – Danach – mit dem Ergebnis diese Funktion aufgerufen, die hier jetzt steht und – die versucht den Text rauszuholen aus. Der Antwort versucht dir den Text rauszuholen. Sie sehen auch das ist wieder ein Promise ein – Versprechen kann fehlschlagen oder auch nicht. – mit diesem Versprechen macht – man jetzt weiter. Ganz – übliche Schreibweise – man jetzt weiter dieses Versprechen, wenn man dieses Versprechen einlösen, dann können wir jetzt endlich was mit – Webseite machen – sich dran gewöhnt hat ist es genial, wenn man das zum ersten Mal sieht, fragt man sich was denn das jetzt alles von unseren sein soll, – wenn das Versprechen – hat. – Versprechen gib mir eine Zeichenkette sehen Sie davon ist es trinkt das Versprechen gibt man eine Zeichenkette okay, wenn – bekommt – eine – die dann diese Funktion da drinnen aufgerufen wird, wenn die Versprechen vorher – haben nicht fehlgeschlagen sind, – kann ich das ja nicht arbeiten, ich kann unten – der – HTML-Code in – diesen Steht – derzeit steht keiner drin, kann ich verstellen auf das was ich bekommen habe gleich txts – sieht haarsträubend aus – ein Speicher das mal und hoffe, dass es funktioniert, – ist alles nicht ganz so leicht laden. – ist ja nichts passiert, ich habe nur den – gebaut aber noch nicht drauf geklickt, wenn ich auf den Knopf klicke dort Auto – Sie sehen so passiert, dann ist noch was falsch. F12 hat Mission der Debugger – den üblichen Browsern, ich mache mal den Debugger auf da ist, also noch was – noch in die Konsole Fehlermeldungen – habe. – es – ist anders falsch Elements, – wie sieht das insgesamt aus? – sieht richtig aus. – ja mal sources – aufmachen Steuerung p. – HTML damals, – ist unser Datei. Ich könnt erstmal hier im Dreck. Setzen auf das Wetter – klicken – mal. – hier – soweit – so gut, wir kommen bei dem Fisch an, aber irgendwas scheint schief zu gehen. – über durchgelaufen. – wir haben angefangen zur gekriegt, also ich hier bei dem Text kommt offensichtlich an – han Text ist not defined, das ist nicht gut. – So Tomaten – auf den Augen meinerseits – ein Return rein. – wenn – Pommes – wird hier danach was tue dann – bekommen von dem Fett die Antwort das ist dokumentiert, dass wir von dem Fett dann die Antwort übergeben bekommen in diese Funktion – jetzt gebe ich aus der Funktion – zurück nämlich von diesem response vor – den Text was für ein Promise ist, ich gebe den Promis zurück, ich habe das getan vergessen. Es ist deshalb nicht zurückgekommen ist aber txt – hier. Die Variable war nicht weil ich nicht zurückgegeben – habe, aber also da fehlte ein Ritterorden an – der Stelle. – hier unten. Brauche ja kein Ritter. Da steht ein Gleichheitszeichen. Ich tue wirklich was ich weiße zu – ich hier das return das brauche dich auf jeden Fall gucken neu – laden natürlich, – es hat sich ja der Code geändert. Die Webseite hat sich ja and geändert. Der Code der Webseite hat sich geändert. – jetzt habe ich dann noch den Dreck. Drin. – vergessen ist return kann als Sie Ihre Webseite ruinieren, wir kriegen jetzt – einer Datei die Webseite holt Daten nach aus einer – kann das aussehen. – Sie jetzt schon eine Chance, – sie z.b. Daten – einem Messgerät holen könnten angenommen auf dem Server an Server wehrigt an Messgerät angeschlossen, wie würden Sie jetzt die besten Datei hier – dieser festen Datei – von dem Messgerät holen kann. ✂ erste Möglichkeit, – dem Server läuft ein Programm das regelmäßig diese Datei neu schreibt so Messwerte – aktuelle Messwerte, schreib dir Dateien neu, wo ich den aktuellen Messwert schreib dir Dateien neu soweit und so weiter, das ist natürlich ein bisschen. – euch – hört gar keiner zu da draußen in der Welt und ständig für die Datei neu geschrieben. Dann das Problem muss man auch noch behandeln. – kann sein, dass sie diese Datei gerade – in dem Moment geschrieben wird, wo sie sie zu lesen versuchen, dass da was durcheinander gerät, dass zumindest ein bisschen aufpassen an der Stelle das nicht durcheinander geraten kann, – Lösung wäre wenn Sie hier eine Datei haben. – Browser glaubt, – eine Datei das normale Datei zu öffnen namens – meine Datei PHP, aber diese PHP Datei – Programmcode – mit, der das Server nachguckt – auf dem – dann nach guckte missbrauchen und nicht ständig nach guckt alle naselang zwei – Möglichkeiten, also so würden sie jetzt live Daten – z.b. Kriegen oder aus einer Datenbank oder sonst woher kriegen – kürzer – das mit dem XML – HTTP Request normalerweise – aussieht, wann – muss ich ein bisschen moderne Techniken gewöhnen hier an die promises. – Die dann Hintergrund laufen und die fertigen ist läuft der selig im Hintergrund ein so was red, – für uns ziemlich unsichtbar bleibt in irgendwann taucht er dann auf – sind in den Sennen und es wird diese Funktion aufgerufen. – absurd ist, dass wir damit ein Promise weitermachen aus den Text da rausholen ist auch wieder ein Pommes – und deshalb kommt hier ein wenn – Begriffe erfahren an der Stelle. ✂ die Frage wie schaffen Sie es dem Server mitzuteilen, – dass sie z.b. Nähmaschine starten – sollte Maschine stoppen soll auch das ginge mit Patches – ginge auch anders – und vielleicht noch einfacher aber auch das ging mit Fetsch stellen sich vor auf dem Server – eine Datei, die heißt Startpunkt PHP. – Und in dieser Stadt. PHP-Datei – den Programmcode, der – an bestimmten Prozess startet von mir aus z.b. Irgendeine exe – auf dem Server messen Windows Server ist gestartet. – picture PHP-Datei – drin stehen, so können Sie auf dem Server auch ganz banal was ausfüllen, – ginge das z.b. Wie ist das Ding jetzt meine Datei txt also sobald sie das können, dann können Sie auch einfache Kommandos ändern den Server, das viel leichter als konkret jetzt Inhalt – hinter einer Datei oder – Daten zu holen – sehr dies aus. – nächste Schritt wäre dass – nicht wir mit dem Server reden, sondern dass das Server mit uns redet. – Das ist – Nummern raffinierte – dass wir mit dem Server reden, also hier holte was vom Server und wenn wir uns nicht dumm anstellen schaffen wir dem Server auch was zu übermitteln Sommergewitter dieser Dateinamen übermittle es – gibt es ja nicht Mittel und Wege das auf der Server was von uns erfährt auch einfacher Mittel und Wege und – alten Geschichten habe ich erzählt in den alten Videos an – das – man hin, – es redet daneben der Browser – mit dem Server – und – dann hätte man in der Praxis gern aber auch dass der Server mit dem Browser redet, dass der Server sagen kann halt hier ist was passiert. – Fehler ist aufgetreten in meiner Maschine, das muss man angezeigt werden, oder ich bräuchte Folgen Information. – diese Information – der Server der Lage sein, mit dem Browser zu reden, sonst ist das nicht ganz komplett, – ist – raffinierter hinter den Kulissen muss einiges passieren, wenn man z.b. Eine Firewall dazwischen hat, dann ist normalerweise hier im Hause auch ist nur erlaubt, dass Verbindungen rausgehen – aber nicht Verbindung reingehen. – Mein Rechner kann nicht – außen kontaktiert werden hier in jetzt das ist durch die Firewall abgeblockt, – Rechner kann außen kontaktieren. – hat mein kleines technisches Problem. Bin der Server mit – dem Browser reden soll der Server kann es nicht ganz von alleine ist muss ein Kontakt aufgebaut werden – Browser – dann kann der Server zurück Funken, aber das sieht dann netterweise – so aus, als ob der Server einfach Sachen schickt. – Das ist – der zweite Teil hier, – wollte ihn auch noch – wie das aussieht, wenn der Server was schickt – das ist – zu schreiben. Es ist deutlich einfacher zu schreiben. – Zauberwort nennt sich eventsource – die Ereignisquelle – dann, noch mal die Ereignisse wieder Ruhe – das hört sich auch alles in window onload rein Zoe und das schaffe ich noch Platz, wenn du onload was soll alles getan werden, wenn das – geladen – ist, – soll – neue eventsource – eingerichtet – werden. Event – so da – ich jetzt sagen. – meine Gegenstelle auf dem Server ist, – in der nicht mal – PHP einbauen gleich eine PHP-Datei auch wieder in demselben Verzeichnis, sonst – müsste man hier wieder – mit ermöglichen – Schrägstrich und so weiter sagen, wobei das Verzeichnis – brauchen wir gleich noch eine PHP-Datei, – uns – schickt, so sieht das ganz banal aus. Wie – gesagt, das muss die Verbindung immer vom Browser aufgebaut werden, sie kann nicht andersrum aufgebaut werden. Sonst scheitert spätestens an der Feier Fall – in Hochschulen und Unternehmen, – ist der Verbindungsaufbau auf, wenn das Dokument geladen – ist ja alles in window onload, wenn das Dokument – ist – die Verbindung aufbauen – mit – PHP, jetzt – muss ich irgendwas veranstalten. – Sian was passieren wird, was – wird passieren, wenn ich etwas renndaten – bekomme – was wird dann passieren ✂ wir sollten also ein Ereignis kriegen und – das verdrahten wir auch wieder die hier window onload mein Button onclick. Es ist jetzt das Maschinchen – die – Verbindung mit dem Server und dieses Maschinchen – dann – etwas – wie onmessage nicht – onload onclick, sondern Front message, wenn eine Nachricht gekommen ist vom Server, was – soll getan werden und dann schauen wir wie ne function – dahinter. – brauche ich ausnahmsweise hier auch mal ein Parameter – ist drinnen, was mir das Server geschickt hat, deshalb – steht da mal Parameter dabei – eh kriegen wir was der Server schickt – wieder, wenn der Server was schickt, wird diese Funktion aufgerufen werden, – Funktion da oben hier aufgerufen wird immer wieder, wenn man auf den Button klickt, diese Funktion hier wird aufgerufen hier nur wieder, wenn das Server verschickt. – ich damit jetzt mache ist ich – ist – das bedeuten rein, ich brauche hier noch einen Ich brauch noch ein Das ist. – ich irgendwo eine Ablage habe sozusagen, – ich das jeden schmeißen gar nicht mehr feiern mein 2 – so in mein 2 – soll reinkommen – 2. – InnerHTML – so reinkommen, was vom – gekommen ist e. Data, – was – ist sie bekommen mehr als die nackten Daten sind Sie daran E-Mail steht – mir als die nackten Daten die komplette Antwort vom Server, wir – wollen nur die nackten Daten haben. – muss man die der Dogo nachgucken, so – sieht das aus, das ist schon viel freundlicher als – das was wir da eben hatten, das ist sehr – mit dem Pommes ist hier ist es sehr simpel. Sie kriegen ganz normal ein Ereignis. – behandle das Ereignis wann immer was kommt vom Server sage ich jetzt – mehr die – die gekommen sind vom Server und schmeiße die als inneres HTML hier unten den Zweirad – im wahren Leben, wenn Sie das natürlich nicht so machen im wahren Leben werden, sie zahlen – erwarten – z.b. – Oder Bilder erwarten, was auch immer da kommen mag und werden dann was anderes damit machen, die zahlen, wenn sie vielleicht hübsch in irgendeinem Tabelle unterbringen. Die Bilder werden sie irgendwo einpflegen, – sie hin gehören aber wenn Sie das hier können, dann können Sie die anderen Sachen ich nehme jetzt einfach die nackt Daten bis sie kommen und schmeiße sie hier – das hatte mehrere ein – banal sieht das aus, – brauchen wir natürlich die Gegenstelle sender PHP, wir brauchen eine Gegenseite dazu tut mir hier Steuerung es um das zu speichern so wird sie noch nicht laufen, ich brauche eine PHP Seite die es auch was schickt, – voll am Ende mal selber hier neu – Sender. – PHP. – Sie daran, dass die dateikürzel sichtbar sein soll, – hier Optionen – und Suchoptionen – ausblenden – ausschalten, – mit dem dateikürzel klappt und ob ich das hier – gemacht umbenennen. – Es sollte heißen Sender. – PHPP. – ich habe jetzt – PHP rein, also? – BAP davor – Ende – jetzt so etwas mehr oder minder raffiniertes passieren erst was mindert raffiniertes um zu zeigen, – das funktionieren soll, – hätte gerne eine Endlosschleife, das kommt gleich noch ein paar Verzierungen, die man rein bringen muss, aber im Prinzip ist folgendes, ich würde gerne eine Endlosschleife Valjoux – in dieser Endlosschleife – der Server eben – schicken. – Das ist im Prinzip. Der Kern ist ganz in eine Endlosschleife und – das Server sollten was nachgucken und – was Spannendes passiert ist, dann soll er mir eben das schicken und – es kommt bei mir in den Browser als Ereignis – an. – Ich müsste ihn sofort auffallen eine Endlosschleife PHP ist komisch, warum ist der Endlosschleife eigentlich – komisch – dem was wir eben über PHP hatten ✂ dass wir also keine gute Idee es sehr für den Anwender draußen aus als ob irgendwas hängt. Die Webseite wird nicht fertig, – hab die muss irgendwann beendet werden, dass die Datei auch zu Ende ist. – die Webseite in Anführungszeichen nie fertig. Der Browser wird wahrscheinlich – schon irgendwelche Zwischenresultate – anzeigen, wenn die zwischendurch was kommt, aber – man normalerweise nicht machen wollen. Endlosschleife – BAB jetzt machen wir ausdrücklich in Endlosschleife in PHP. – gleich noch dazu sagen, die wird nicht endlos laufen auf den normalen Systemen, aber sie wird recht lange laufen, wenn man wird. – hier die ganze Zeit gucken – nach hat sich irgendein Wert geändert oder – ist irgendwas zu berichten und dann schicken wir das an den Browser mit einer Endlosschleife, dass dieses – programmieren – Ich sagen scheinbar gar nicht bevor sie überlegt, wir holen einfach die aktuelle Uhrzeit. – wahren Leben hol sie Messwerte oder was aus einer Datenbank und ähnliches aber das – wird drei Nummer zu kompliziert. Wir holen einfach die Uhrzeit. – Und die kriegen sie als dates. – da muss man jetzt in die Anführungszeichen noch reinschreiben, welches Format ich gerne hätte, ich hätte gerne die – in 24 Stunden Format, ich hätte gerne die Minuten bin der führende 0 und ich hätte gerne die Sekunden miteinander 0 – ich auch nur – ich heute Vormittag nachgeguckt habe irgendwas man das wahrscheinlich auswendig, was tausendmal geschrieben hat und es gibt Kürzel dafür, – man jetzt die verschiedenen Bestandteile von Datumsangaben und Uhrzeitangaben – ipap zu formulieren hat, dann schauen wir noch was Nettes davor hier von wegen. – mit dem Punkt – sie in PHP – aneinander das Vorhaben + in Java und die C-Sharp und den javaScript scheint im Plus und Zeichenketten einander zu Ende. BAP ist es ein Punkt – zu einfach und auch ein Punkt dahinter so – da also gleich hoffentlich da es ist so – und so viel uhr. – soundsoviel – sehen diese Punkte in der Mitte sind gelb das zusammenhängen – von Zeichen. – haben wir jetzt was rosa an Daten übergeben wollen – haben sie eben schon wieder Vistaprint Befehle von BAP, – ist eben Nicole – kann man leider – Standard nicht einfach sagen. – Inhalt dieser Variablen aus – denken Dollar in PHP output – in variable – funktioniert leider nur, wenn sie noch ein bisschen – ist im öffne dich dazu sagen, es muss davor stehen data – Leerzeichen – angehängt – das was übertragen wollen und am Ende von dem ganzen – um 2 x 0 1 stehen, sonst wird es nicht funktionieren der – Standard villazzo und – Browser will das auch so, sonst geht's nicht, – sie müssen tatsächlich – noch die magischen Beschwörungsformeln – dazu sagen – dann kommt ihre Zeichenkette und danach kommt zweimal neue Zeile. – das aus jetzt – müssen wir dafür sorgen. – das raus geht das richtig obwohl – PAP – ja noch nicht fertig ist. Müssen wir soll ich sagen, – HP eintritt geben, dass er das jetzt wirklich mal abschickt, – heißt dann etwas komplizierter – Ruby and – flush – Flaschen, wieso Beschwörungsformeln, – die muss man alle einmal – zusammen suchen von den entsprechenden Dokumentation – Zeiten und irgendwann weiß man die dann wahrscheinlich auswendig und – nicht sich das großartig zu merken. So ist es halt – mit den beiden Zahlen sagen sie BHP jetzt bitte mal schicken. Ich weiß, das ist noch nicht fertig schickes trotzdem das ist auch besser nicht fertig ist. – sollten Sie Endlosschleife natürlich nicht. – schnell laufen – Was wäre das Dümmste, was sie machen damit diese Endlosschleife – jetzt nicht rotiert – sozusagen in var – System parodiert, was würde man erwarten? ✂ Sowas wie Delay sagen sie genau sleep heißt es hier – heißt auf dem meisten System erst 70, scheinlich hier von den Microcontroller, da heißt es auch gerne mal Delay steep – ist – vielleicht auch ein bisschen aus anderes als Delay – heißt auf dem üblichen System auf jeden Fall – in der Zeit was anderes getan werden kann, ist jetzt nicht – das hier schreibe 2 Sekunden sind gemeint in PHP. – zwei Millisekunden anderswo – sind zwei Millisekunden sind zwei sekunden, – sie sagen sleep hast es auf den meisten Systemen – das eben nicht der Rechner anfängt zu rotieren und jetzt Blödsinn zu machen zwei Sekunden lang, sondern – du zwei sekunden was anderes oder nicht ich wirklich schlafen, das heißt das auf den üblichen System Delay – müssen mal gucken, wie es jeweils implementiert ist. Die Welt könnte auch bedeuten, dass jetzt die Maschine einfach Sekunden lang rappelt bis 2 Sekunden um sind und damit – doch ordentlich an Energie verbraucht und Leistung abzieht – jetzt schläft er also zwei Sekunden und dann fängt er von vorne an holt die nächste – schieb – die rüber zum – so weiter, das – weiß leider noch nicht ganz sorry, wir müssen vorher noch das verlangt. Der Standard müssen wir noch sagen, was da ankommt, wenn er da kommt da noch davor – ist das für ein Inhaltstyp Content-Type, – ist Text – und zwar von der speziellen Sorte Ereignis – Strom Event stream. – verlangt, dass der Standard von uns damit der Browser das auch wirklich erkennt – wir müssen noch sagen, – dass bitte nichts gecached werden soll, dass der Browser sagt. Oh, – ich schon und was ist durch was altes liefert. – no-cache – kostet ein denn in 10 minuten irgendwo auf Stackoverflow oder so um das herauszufinden, – was da alles an – öffne dich davor stehen muss. – so gut, ich habe schon angedeutet. Diese Endlosschleife, – die ist nicht immer eine Endlosschleife, – Sie das auf gemieteten – machen sind – sie 5 € Monat Angebote. Kann – es sein, dass sie oder wird es auch so sein, dass sie nach ein halben Minute rausfliegen, weil der Provider sagt so das Ding nicht fertig geworden, ich würde das jetzt ab – der Leute waren auch noch was tun, – der Server nicht – stark belastet wird, also, wenn das offen gemieteten – ist, diese sowieso schwierig kann sein, dass ihn das sowieso abgewürgt wird. Wenn Sie das auf dem eigenen Server haben ihr kleiner raspberry die irgendwo rumliegt oder hier Apache. – meiner Maschine hier, wenn Sie das auf dem eigenen Server haben, dann haben sie da größte Grillmöglichkeiten, – dann können Sie z.b. Sagen set. Time limit, – lange darf das überhaupt laufen set time limit dahin – 10 Sekunden – 1000 Sekunden, aber ich schreibe jetzt mal zehn Sekunden Wein – dass sie sehen, – wird aber transparent neu gestartet netterweise, also wir glauben – erstmal eine Endlosschleife dazu sehen, aber was erzählt ich passiert ist wird jetzt einfach nach 10 Sekunden neu gestartet und das wird auch zwangsläufig so passieren, wenn es ist aus auf gerooteten Webspace haben, weil Provider eben das Abwürgen wird. – wird nicht endlos laufen. – es fühlt sich an, als ob es endlos läuft überhaupt gucken, – ob ich jetzt alles habe und auch kein – return oder irgendwelche anderen – vergessen habe, das heißt, wenn ich das jetzt zum laufen bringe, das war test HTML – noch okay – 8. Immerzu okay, – Seite – holen. – Das – Unfassbare sie sehen hier jetzt – Server schickt uns was ich tue nichts, – gibt auch nicht im Browser einen – timer. – jetzt alle zwei Sekunden etwas feuert, das passiert nicht im Browser, sondern uns schickt der Server was ist – am Anfang keine Verbindung mit dem Server aufgebaut und jetzt wird alle zwei Sekunden vom Servers geschickt, die Uhrzeit zu schicken durch ein bisschen unsinnig, – wollen Bestwerte haben, aber wenn Sie die Uhrzeit können, dann können Sie auch alles andere. – zeige noch mal das mit den 10 Sekunden wieder F12, dass wir angucken können, was jetzt weiter den Kulissen passiert network. – sehen Sie eine Verbindung sender BAPI, das ist die eine Verbindung. Sie – läuft – 8 Sekunden, – läuft seit 10 Sekunden. – Und zack wird sie neu aufgebaut sehen, – das war für 10 Sekunden und jetzt kommt die nächste Verbindung für – 10 Sekunden. Unser Programm macht das mit was ist fühlt sich sehr danach an, als ob diese Schleife ein Endlosschleife ist, das ist sehr nett von der Programmierung her. – ist normalerweise keine Endlosschleife. Es wird neu gestartet – hier – Provider ist und ihr großzügiger ist Server ist umso länger darf die Zeit sein für die das läuft. – bevor es neu gestartet fährt, – fühlt sich an wie die an Busch – Server zum Browser – ist es so, dass der Browser die Verbindung aufmacht – auch wieder neu aufmacht, wenn sie abgebrochen worden ist. Sehen Sie hier jetzt zum fünften Mal – wir dann über die bestehende Verbindung Daten vom Server kriegen und immer wieder eine eigentlich kriegen, wenn Daten angekommen sind vom Server sieht – das aus – zurück in den Code. ✂ ich froh, dass jemand von ihnen Nedzad war. Doch jetzt geht es derzeit nicht, – ist etwas ärgerlich, dass Microsoft – das noch nicht umgesetzt hatte Internet gestochen sowieso nicht. Da geht schon das erste nicht – geht schon wieder nicht Explorer sowieso nicht und – source oder – Server sent Events aktuell – in EDGE nicht das – natürlich dann ärgerlich oder sind. – der Reprogrammierung aus immer wieder mit allem möglichen Browsern testen, ob es auch überall läuft, das – läuft hier eben in Chrom und den Firefox, wenn ich mich nicht ganz von – tue auch auf Safari, aber es läuft eben nicht – derzeit nicht kann auch nachkommen, – kann es nachrüsten, – es gibt für ganz viele Funktionen, die fehlen und Sohn, die immer wieder neu dazu kommen zu den Browser für ganz viele Funktionen gibt es so Nachrüstset und – einen schönen Namen Shops mal wieder zwischen – Poly – Finish Spachtelmasse – wenn sie danach googlen, wenn Sie feststellen, dass ihn irgendeine bestimmte Funktion fehlt auf einem bestimmten Browser, – suchen Sie normalerweise ein polyfill – für diese Funktion Spachtelmasse – für diese Funktion und normalerweise werden – sie dann auch fündig genauso hier, wenn man eben – Edge bedienen muss Internet – Explorer sogar noch bedienen muss, dann sucht man einen polyfill für Server sent Events – schon irgendwie dann was geben – muss ich jetzt das nicht gibst du zufälligerweise oder ärgerlicherweise nicht – gibt muss man sich was anderes überlegen, – Sie einen Browser so der nein brauchst ja so behandeln, – Tipp am Ende keiner iuscomm, – sie – abgedrehte – Funktionen – verwenden. – in dieser – gucken, wo das schön aufbereitet ist, welcher Browser – wirklich, was kann in welcher Version?