1

ハンドルバー テンプレートからレンダリングされた HTML をサーバー側で提供するエクスプレス ベースのアプリと、バックボーン リソースのバンドルがあります。理論的には、クライアント側では、アプリはサーバー側で起こっていることに似ています。

これは開発では問題ありませんが、ノードサーバーが同時に多くのリクエストを処理している場合、使用しているヘルパーが定義/再定義されるメカニズムが壊れます-ヘルパーを設定します(この場合、ログイン/ログインしていません)ログインしているが、何でもかまいません) その後、残りのリクエストの処理が非同期で行われます。これにかかる時間はわかりませんし、制御することもできません。

これは、サーバー上のハンドルバーが事実上グローバルであるためであることをすでに理解しています。したがって、リクエストが来るたびに、呼び出されているヘルパーはそこから、リクエスト間の共有オブジェクトです。

問題は、その特定の値を返す非同期リクエストごとにヘルパーを設定し、同時リクエストによって汚染されないようにする方法です...?

テストケースの要点は次のとおりです-うまくいけば問題を示しています:

https://gist.github.com/dazld/023df6e1da7a92387720

(私が何をしようとしているのかが明らかでない場合は、コメントでpingしてください。より明確なものを書きます)。

ありがとう!

4

1 に答える 1

1

これは、Handlebars の単一のインスタンスを使用し、多くのリクエストを使用して、あるリクエストを別のリクエストで汚染しているためです。

私はhbs( https://github.com/donpark/hbs ) を使用します。これは、リクエスト/レンダリングごとにハンドルバーの新しいインスタンスを作成するためです。

于 2013-06-24T11:38:25.990 に答える