я прочитал, что, чтобы избежать кэш nodejs необходимо использовать:нет кэша в nodejs сервере
"res.header('Cache-Control', 'no-cache, private, no-store, must-revalidate, max-stale=0, post-check=0, pre-check=0');"
Но я не знаю, как использовать его, потому что я получаю ошибки, когда я ставлю эту строку в моем коде.
Моя функция (где я думаю, что я не программировать не кэш) является:
function getFile(localPath, mimeType, res) {
fs.readFile(localPath, function(err, contents) {
if (!err) {
res.writeHead(200, {
"Content-Type": mimeType,
"Content-Length": contents.length,
'Accept-Ranges': 'bytes',
});
//res.header('Cache-Control', 'no-cache');
res.end(contents);
} else {
res.writeHead(500);
res.end();
}
});
}
Кто-нибудь знает, как не положил никакого кэша в моем коде? спасибо
Используйте [ 'res.header()'] (http://expressjs.com/api.html# res.set) (и/или ['res.setHeader()'] (http://nodejs.org/api/http.html#http_response_setheader_name_value)) до ['res.writeHead()'] (http: // nodejs.org/api/http.html#http_response_writehead_statuscode_reasonphrase_headers), если вы хотите их смешивать. 'writeHead()' является окончательным, поэтому после него нельзя добавлять дополнительные заголовки. –
привет спасибо .. Я пытался поставить res.header() раньше, но у меня была ошибка. С другой стороны res.setHeader работает – user2986808