Pergunta

Existem muitos widgets fornecidos por sites que são, na verdade, pedaços de JavaScript que geram HTML por meio de DOM manipulação ou document.write().Em vez de desacelerar ainda mais o navegador com solicitações adicionais e confiar em outro provedor para ser rápido, confiável e não alterar a saída do widget, quero executar* o JavaScript para gerar o HTML renderizado e, em seguida, salvar essa fonte HTML.

Coisas que analisei que parecem impraticáveis ​​ou muito difíceis:

  1. O navegador de links (não lince!)
  2. Uso sem cabeça do Xvfb mais Firefox mais Greasemonkey (caramba)
  3. O kit de ferramentas do navegador totalmente Java Cobra (a melhor aposta!)

Alguma ideia?

** Obviamente você não pode executar o JavaScript completamente, pois ele não tem necessariamente um caminho de saída, mas essa é a ideia.

Foi útil?

Solução

Wikipédia "JavaScript do lado do servidor" artigo lista inúmeras implementações, muitas das quais são baseadas no Mozilla Rinoceronte Conversor JavaScript para Java, ou seu primo Macaco aranha (o mesmo mecanismo encontrado no Firefox e outros navegadores baseados no Gecko).Em particular, algo simples como mod_js para Apache pode atender às suas necessidades.

Outras dicas

Se você estiver usando apenas JS simples, Rinoceronte deve fazer o truque.Mas se o código JS estiver realmente chamando métodos DOM e assim por diante, você precisará de um navegador completo. Pé de cabra pode ajudá-lo.

Isso realmente tornará as coisas mais rápidas para os usuários sem causar problemas de compatibilidade?

Existe o projeto de John Resig Trazendo o navegador para o servidor:"ambiente navegador/DOM, escrito em JavaScript, que roda em cima de Rinoceronte;capaz de rodar jQuery, Prototype e MochiKit (no mínimo)."

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top