Como usar o NSURLSession para determinar se o recurso foi alterado?

Estou usando o NSURLSession para solicitar um recurso JSON de um servidor HTTP. O servidor usa o Cache-Control para limitar o tempo em que o recurso é armazenado em cache nos clientes.

Isso funciona muito bem, mas eu também gostaria de armazenar em cache um objeto JSON desserializado na memória, pois ele é acessado com bastante frequência, enquanto continua aproveitando os mecanismos de cache HTTP incorporados ao NSURLSession.

Estou pensando em salvar alguns cabeçalhos de resposta HTTP:Content-MD5, EtageLast-Modified junto com o objeto JSON desserializado (estou usando esses três campos, pois notei que nem todos os servidores HTTP retornamContent-MD5caso contrário, isso seria suficiente por si só). Na próxima vez em que receber uma resposta para o objeto JSON, se esses 3 campos forem iguais, posso reutilizar o objeto JSON anteriormente desserializado.

Essa é uma maneira robusta de determinar se o JSON deserizlied ainda é válido. Caso contrário, como determino se o objeto desserializado está atualizado?

questionAnswers(2)

yourAnswerToTheQuestion