2017-10-20 3 views
0

私はたくさん試しましたが、JADEテンプレートエンジンでNodejs Expressで構築したWebApplicationをキャッシュできません。 iはしようとしたもの .jsと.cssとNodejsの別の静的ファイルをキャッシュする方法は?

1- 2- production 3- NODE_ENVを設定しようとしたpm2マネージャは、キャッシュモジュールを追加しようとした(しかし、私はそれを使用する方法を理解DINT)

const NodeCache = require("node-cache"); 
const myCache = new NodeCache({ stdTTL: 100, checkperiod: 120 }); 

しかしそれはキャッシュされませんでした。

THIはhttps://nodejs.org/en/ enter image description here

からの結果であり、これは私のWebアプリケーションの結果、私はどのようにそれを行うには、すべての静的ファイルをキャッシュする必要が enter image description here

..です親切に私を助けてください..ありがとうございます

+0

100秒間キャッシュするだけですか?さらに、 'NodeCache'をインスタンス化するだけで何もできません。これは便利ですhttps://medium.com/the-node-js-collection/simple-server-side-cache-for-express-js-with-node-js-45ff296ca0f0 – nilobarp

+0

ブラウザは自動的に静的リソースを一度キャッシュしますあなたは実際にどこかでそれをホストしています...とにかく、本番環境で静的ファイルをホストするためにノードを使用すべきではありませんし、サイト/アプリケーションを公開するために使用するWebサーバー/リバースプロキシ(nginx/apache/etc )。コード内に明示的なキャッシングやモジュールを使用する必要はありません。 – AllTheTime

+0

ノードベースのサーバーを持っていても問題ありません。クライアント側のキャッシングに適切なヘッダーを設定するhttps://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cache-Control – nilobarp

答えて

1

Cache-Controlヘッダーをhandlerに設定してください。

app.get('/', function(req, res){ 
    res.set('Cache-Control', 'max-age=31536000'); 
    res.send('hello world'); 
}); 

クライアント側のキャッシュにはnode-cacheを使用する必要はありません。

+0

bro res.render( 'index')はどうですか? – AnonymousObject

+0

js、cssファイルはキャッシュされませんでしたが、最大経過時間は0です – AnonymousObject

関連する問題