Como "304 não modificado" funciona?
Como "304 Não Modificado" é gerado?
Como um navegador determina se a resposta a uma solicitação http é 304?
É definido pelo navegador ou enviado do servidor?
Se enviado pelo servidor, como o servidor conhece os dados disponíveis no cache, também como define 304 como uma imagem?
Meu palpite, se gerado pelo navegador
function is_modified()
{
return get_data_from_cache() === get_data_from_url();
};
function get_data_from_cache()
{
return some_hash_or_xxx_function(cache_data);
}
function get_data_from_url()
{
return some_hash_or_xxx_function(new_data);
}
function some_hash_or_xxx_function(data)
{
// do something with data
// what is that algorithm.?
return result;
}
console.log(is_modified());
Estou confiando no provedor de API de terceiros para obter dados, analisar e enviá-los ao DB. Os dados podem ou não mudar durante cada solicitação, mas o cabeçalho sempre envia200
, Não quero analisar, verifique o último ID exclusivo no banco de dados e assim por diante .. para determinar a alteração nos dados, nem compare o resultado diretamente, em vez demd5()
, sha1()
& crc32()
HASHed o resultado e funciona bem, mas querendo saber o algoritmo para determinar304
.
Eu quero usar o mesmo tipo de algoritmo para determinar a alteração nos dados.