2008-08-18 9 views
8

Hay muchos widgets provistos por sitios que son efectivamente bits de JavaScript que generan HTML a través de DOM manipulación o document.write(). En lugar de ralentizar aún más el navegador con solicitudes adicionales y confiar en que otro proveedor sea rápido, confiable y no cambie la salida del widget, quiero ejecutar * el JavaScript para generar el HTML renderizado y luego guardar esa fuente HTML.Ejecutando JavaScript para Renderizar HTML para el Almacenamiento en el Caché del Servidor

Las cosas que he mirado en la que parecen impracticables o demasiado difícil

  1. El Navegador de Enlaces (no lince!)
  2. uso sin cabeza de Xvfb además Firefox con Greasemonkey (uff )
  3. El navegador kit de herramientas de la cobra todo en Java (la mejor opción!)

¿Alguna idea?

** Obviamente no se puede ejecutar el JavaScript por completo, ya que no necesariamente tiene una ruta de salida, pero se entiende.

Respuesta

2

"Server-side JavaScript" artículo de Wikipedia enumera numerosas implementaciones, muchos de los cuales están basados ​​en Mozilla Rhino convertidor de JavaScript a Java, o su primo SpiderMonkey (el mismo motor que se encontró en Firefox y otros navegadores basados ​​en Gecko). En particular, algo simple como mod_js para Apache puede satisfacer sus necesidades.

2

Si solo está utilizando JS simple, Rhino debería hacer el truco. Pero si el código JS llama realmente a los métodos DOM, etc., necesitará un navegador completo. Crowbar podría ayudarlo.

¿Esto realmente va a hacer las cosas más rápidas para los usuarios sin causar problemas de compatibilidad?

2

Hay proyecto de John Resig Bringing the Browser to the Server: "navegador/entorno DOM, escrito en JavaScript, que se ejecuta en la parte superior de Rhino; capaz de ejecutar jQuery, Prototype y MochiKit (al menos)."

+0

Lo de Resig es exactamente lo que estoy buscando. – matt

Cuestiones relacionadas