2016-11-14 11 views
2

私はこのジェイドファイルが私の見解フォルダ内にあるステータスコード304(ジェイド、ノード、エクスプレス)

link(rel='stylesheet', href='/stylesheets/bootstrap.css') 

script(src='/javascripts/jquery-3.1.1.js') 
script(src='/javascripts/bootstrap.js') 

、私のヒスイのファイルにブートストラップとjQueryをリンクしています。 私のpublic/stylesheetsフォルダにはboostrapのCSSがあり、javascriptはpublic/javascriptsフォルダにあります。私はnodemonを使用して自分のアプリケーションを実行すると

、それは

GET/200 80ms - 1.65kb 
GET /stylesheets/bootstrap.css 304 1ms 
GET /javascripts/jquery-3.1.1.js 304 3 
GET /javascripts/bootstrap.js 304 2ms 

JavaScriptとCSSファイルがアップロードされませんと言います。

提案?クライアントが条件付きGETリクエストを実行し、アクセスが許可され ですが、ドキュメントが変更されていない場合

+1

304応答があることを示し、ヘッダを追加することができますリソースは変更されていません。それは何が間違っていますか? – slorenzo

答えて

2

304が

を変更していない、サーバーが このステータスコードで応答する必要があります。 304応答には message-bodyが含まれてはならない。したがって、ヘッダーフィールドの後の最初の空白行 によって常に終了する。

Serverは、ブラウザが最後200ステータスコードでファイルのコピーを受信して​​からファイルが変更されていません知っているように、クライアント(ブラウザ)に304http状態を送りました。この場合、通常ブラウザにはcached copyのファイルがあり、cacheから読み込みます。

あなたのブラウザcacheをすべて消去すると、すべての一時ファイルや履歴などを削除して、ブラウザを閉じて再起動(再起動)してください。

ページをリロードし、nodemonでステータスコードを再度確認してください。今回は200にする必要があります。この状態を取り除くために

+0

これは意味があります。しかし、私はまだcssとjsファイルがブラウザにロードされない理由について混乱しています。彼らがキャッシュされている場合、彼らは働いてはいけませんか? –

+0

はい、キャッシュからロードする必要があります。キャッシュをクリアしてみてください。 – Aruna

0

完全にあなたは

res.header( 'のCache-Control'、 'キャッシュなし、無店舗、必要-再検証')

関連する問題