Ausführen von JavaScript zum Rendern von HTML-Code für Server-Side Caching
Gibt es jede Menge widgets zur Verfügung gestellt von Websites, die sind effektiv bits von JavaScript-Code zum generieren von HTML-Code durch DOM manipulation oder document.write()
. Anstatt verlangsamen den browser unten noch mehr mit zusätzlichen Anforderungen und Vertrauen noch einen anderen Anbieter, schnell, zuverlässig und nicht ändern Sie die widget-Ausgabe, möchte ich ausführen* das JavaScript zum erzeugen der gerenderten HTML, und speichern Sie dann die HTML-Quelle.
Dinge, die ich habe in gesucht, die scheinen nicht praktikabel oder viel zu schwer:
- Der Links-Browser (nicht lynx!)
- Kopflosen Verwendung von Xvfb plus Firefox plus Greasemonkey (Huch)
- Die all-Java-browser-toolkit Cobra (die beste Wette!)
Irgendwelche Ideen?
** Natürlich kannst du nicht wirklich führen Sie das JavaScript vollständig, da es nicht unbedingt eine exit-Pfad, aber Sie bekommen die Idee.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wikipedia "Server-side JavaScript" Artikel listet zahlreiche Implementierungen, von denen viele basieren auf Mozilla Rhino JavaScript-nach-Java-Konverter, oder seine Cousine SpiderMonkey (die gleiche engine wie in Firefox und anderen Gecko-basierten Browsern). Insbesondere, so etwas einfaches wie mod_js für Apache, die Ihre Anforderungen anpassen können.
Wenn Sie nur mit plain, JS, Rhino sollte den trick tun. Aber wenn der JS-code ist eigentlich aufrufenden DOM-Methoden und so weiter, Sie gehen zu müssen, um einen vollwertigen browser. Crowbar die Ihnen helfen könnten.
Ist das wirklich gehen, um die Dinge schneller für den Benutzer, ohne dass Kompatibilitätsprobleme?
Da John Resig ' s Projekt Womit sich die Browser an den Server: "browser/DOM-Umgebung in JavaScript geschrieben, läuft auf der Oberseite des Rhino; in der Lage mit jQuery, Prototype, und MochiKit (zumindest)."