HTTP-кеширование в RestSharp (моносенсорный ввод)

RestSharp (monotouch), похоже, игнорирует заголовки Cache-Control, на которые отвечает сервер (для вызовов GET). Является ли это общим случаем, когда RestSharp не выполняет надлежащее кэширование HTTP? Или я что-то пропустил? Используются следующие параметры заголовка, но документ не кэшируется.

Date: Tue, 21 May 2013 11:34:55 GMT
Content-Type: application/json
Transfer-Encoding: chunked
Connection: keep-alive
Cache-Control: no-transform, max-age=3600
Content-Encoding: gzip

Если сам RestSharp не поддерживает правильное кэширование, как лучше всего реализовать локальное кэширование HTTP вместе с RestSharp? Добавляете кеширующий прокси-компонент?


person frogge    schedule 21.05.2013    source источник


Ответы (1)


Это старый вопрос, и я искал ответ, когда наткнулся на это: Monotouch – iphone HttpWebRequest отключить кэширование?

Теперь, поскольку RestSharp использует HttpWebRequest под капотом, а реализация HttpWebRequest в monotouch не поддерживает кэширование, кэширование также не будет работать в RestSharp. Так что вам (и мне) придется реализовать собственный компонент кэширования.

person reinder    schedule 06.11.2013
comment
Хорошим местом для начала может быть использование кэша LRU в MonoTouch.Dialog, написанном Мигелем ДеИказой. Он используется для кэширования изображений, но я уверен, что его можно переназначить для HTTP-ответов с небольшой доработкой. - person NovaJoe; 27.12.2013