Seiten schon übertragen, wenn cgi noch läuft?



  • Wie annonymus bereits geschrieben hat, wird das ganze erst gepuffert und dann übertragen.

    Allerdings stellt sich die Frage, ob es überhaupt Sinn macht, dass der Browser vorerst nur <html>, evtl. noch Headerdaten und <body> bekommt. Schließlich kann er erst dann richtig wissen wie er die Seite aufbauen soll, wenn er </body> erhalten hat bzw. das Dateiende.



  • AFAIK zeigt der Internet Explorer die Seite erst an, wenn alle Daten übertragen wurden.



  • Ich dachte mir halt, dann kann der Benutzer wenigstens schon mal den Hintergrund sehen, und merkt, dass das Script arbeitet, sonst sieht das für ca. 5 sek. so aus, als ob die Seite tot ist, weil unten der Statusbalen immer weiter wandert, aber nix passiert.
    Außerdem kann ich vor dem body ja schon mit javascript das preloading der Bilder starten.

    Also liegts weder an Browser noch Server sondern an meinem Programm. werds gleich mal testen, Danke.



  • PAB schrieb:

    AFAIK zeigt der Internet Explorer die Seite erst an, wenn alle Daten übertragen wurden.

    Da weisst Du falsch. Schau Dir mal Seiten wie spotlight.de auf ISDN oder kleiner an, da sieht man deutlich, dass die Seite mit der Zeit waechst. Die Erfahrung hab ich bis jetzt mit praktisch jedem Browser gemacht. Ausnahme sind alte Netscape-Versionen (oder wars Opera?) bei der Darstellung von Tabellen.



  • Ja stimmt, auch Internet Explorer läd und zeigt die Seite wenn man den flush Befehl nutzt.
    Mit folgendem kleinem Programm sieht man's deutlich (WindowsApache als Server):

    #include <iostream>
    #include <windows.h>
    
    using namespace std;
    
    int main()
    {
    	cout << "Content-Type: text/html" << endl << endl;
    	cout << "Test mit Flush<br>";
    	cout.flush();
    	Sleep(5000);
    	cout << "Test nach Verzögerung";
    	return(0);
    }
    


  • Ich kenn das aus nem recht grossen YaBB-Forum, wo die Antwortseite in längeren Threads erst nach dem vollständigen Laden der Seite erscheint.



  • Hängt aber evtl. damit zusammen, dass die Antworten in einer Tabelle stehen, oder? Muss ja nicht unbedingt an der Übertragung liegen.
    Keine Ahnung was passiert, aber was is wenn man noch wärend des Seitenaufbaus sich den Quelltext anzeigen lässt? Bei meinem Programm wird da schon der erste Teil angezeigt, kannst ja mal probieren, wenn du Lust hast.



  • Stimmt, das könnte auch sein 🙂


  • Mod

    Gratulation - er habt gerade entdeckt, warum man tabellen nicht als layout mitteln missbrauchen soll 😉



  • Die sind schon längst ausm Layoutteil meiner Seite verbannt 😉


Anmelden zum Antworten