Pergunta

Eu li RFC 2616 , mas ainda Eu me pergunto, o que o campo Data é para. Não é o campo Last-Modified, que realmente tem um significado metadados, além de apenas servir, isto é, para armazenamento em cache ( 'If-Modified-Since').

Mas o que uso tem-se dobrar a informação em um cabeçalho Data separado?

Foi útil?

Solução

Por spec, ele é usado em cálculos de idade. Se você não sabe o tempo que o servidor pensa que é, você não será capaz de calcular a "idade" de um recurso. Aqui está o texto relevante do spec:

Resumo do algoritmo de cálculo da idade, quando um cache recebe uma resposta:

age_value
é o valor da Idade: cabeçalho recebido pelo cache com esta resposta.

date_value
é o valor do cabeçalho Date: do servidor de origem

request_time
é a hora (local) quando o cache feito o pedido que resultou nessa resposta em cache

response_time
é a hora (local) quando o cache recebeu o resposta

now
é o atual tempo (local)

apparent_age = max(0, response_time - date_value);
corrected_received_age = max(apparent_age, age_value);
response_delay = response_time - request_time;
corrected_initial_age = corrected_received_age + response_delay;
resident_time = now - response_time;
current_age   = corrected_initial_age + resident_time;
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top