JavaScript を実行してサーバー側キャッシュ用の HTML をレンダリングする

StackOverflow https://stackoverflow.com/questions/15007

質問

サイトによって提供されるウィジェットは数多くありますが、これらは実質的に JavaScript の一部であり、 ドム 操作または document.write(). 。リクエストを追加してブラウザーの速度をさらに低下させたり、高速で信頼性が高く、ウィジェットの出力を変更しない別のプロバイダーを信頼したりするのではなく、JavaScript を実行*してレンダリングされた HTML を生成し、その HTML ソースを保存したいと考えています。

私が調べた中で、実行不可能または難しすぎると思われるものは次のとおりです。

  1. リンクブラウザ (オオヤマネコじゃないよ!)
  2. Xvfb と Firefox と Greasemonkey のヘッドレス使用 (うわぁ)
  3. すべて Java ブラウザ ツールキット Cobra (最善の策です!)

何か案は?

** JavaScript には必ずしも終了パスがあるわけではないので、明らかに完全に実行することはできませんが、その考えはわかります。

役に立ちましたか?

解決

ウィキペディアの 「サーバーサイドJavaScript」 この記事には多数の実装がリストされており、その多くは Mozilla のベースに基づいています。 サイ JavaScript から Java へのコンバーター、またはその親戚 クモザル (Firefox や他の Gecko ベースのブラウザにあるものと同じエンジン)。特に、次のような単純なもの mod_js for Apache はあなたのニーズに合うかもしれません。

他のヒント

単純な JS を使用しているだけの場合は、 サイ トリックを実行する必要があります。ただし、JS コードが実際に DOM メソッドなどを呼び出している場合は、本格的なブラウザが必要になります。 バール あなたを助けるかもしれません。

これにより、互換性の問題を引き起こすことなく、ユーザーの作業が本当に高速化されるのでしょうか?

John Resig のプロジェクトがあります ブラウザをサーバーに接続する:「JavaScript で記述され、その上で実行されるブラウザ/DOM 環境 サイ;(少なくとも) jQuery、Prototype、および MochiKit を実行できます。」

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top