2014-01-13 3 views
0

Я замечаю, что когда я обновляю фид (устанавливаю новое значение), а затем читаю фид, возвращаемые данные не всегда включают мое последнее обновление. Это как если бы Xively возвращал кешированный ответ. В конце концов (через 5 минут или около того) запрос приведет к возврату нового значения.Почему Xively отправляет устаревшие (возможно, кэшированные) данные?

Это устройство режима разработки; Я вижу новое значение, отображаемое на странице состояния Xively для устройства сразу после обновления. Я также заметил, что запросы, приводящие к устаревшим данным, не отображаются в журнале запросов Xively. По истечении 5 минут отправки запросов и получения устаревших ответов в журнале запросов появится запрос, и будет возвращен обновленный ответ.

я обновить свой канал, как это: локон -X PUT [email protected] -H X-ApiKey: my_key http://api.xively.com/v2/feeds/feed_id.json

где feedupdate.json содержит:

{ "версия": "1.0.0", " ": потоки данных [ { "ID": "stream_id", "current_value": "202" } ] }

И я просить статус корма, как это:

локон -o feedrange.json -H Cache-контроль: нет-кэш -H Pragma: нет кэша -H X-ApiKey: my_key http://api.xively.com/v2/feeds/feed_id.xml?start=2014-01-13T10:00:00Z

ТИА.

ответ

0

Ничего не изменилось на стороне Xively, насколько известно.

Это, как говорится, я недавно заметил эту проблему. Однако я не смог воспроизвести его равномерно. Попробуйте пойти в фид в своем браузере, он все еще кэширован? Попробуйте другое подключение к Интернету, оно все еще кэшировано?

Моим решением было установить заголовок cache-control: no-cache на устройство, и это немедленно позаботилось о проблеме для меня. Это то, что я собираюсь вам рекомендовать, но, похоже, вы уже передаете это как заголовок.

Я бы рекомендовал осматривать другие варианты, которые вы можете установить в заголовке cache-control и поэкспериментировать с ними. Также попробуйте другие устройства и интернет-соединения, чтобы узнать, можете ли вы выяснить, где он кэшируется.

Было бы также полезно помочь вам, если бы вы предоставили некоторую информацию о том, что такое ваша установка. Язык, аппаратное обеспечение, настройка Интернета и т. Д.

+0

Hi. Что касается моей настройки, я воспроизвел эту проблему с помощью инструмента командной строки Curl, как описано выше. Ни один из параметров контроля кеша, похоже, не работает. Я работал над этим сейчас, гарантируя, что каждый раз я запрашиваю другой URL-адрес, перемещая время начала. – RobM

Смежные вопросы