2015-04-14 4 views
1

Я пытаюсь улучшить возможности кеша в своем приложении для парусов.Как использовать Etag с sailsjs

Sails генерировать Etag свой ответ, но когда я пытаюсь сделать запрос GET с заголовком «если-None-Match» содержащий Etag из предыдущего ответа я не могу получить 304 не Модифицированная ответ от сервера (ответ действительно не изменен, и получаемый Etag I совпадает с предыдущим).

Я использую POSTMAN для проверки ответов сервера.

Есть ли способ для сервера парусов отправить такой код состояния на неизмененные ответы? Я не могу найти какой-либо ресурс для использования Etag в sails doc.

спасибо.

ответ

0

Sails.js основан на Express.js, и ETags генерируются Express.js. И согласно this answer, слабые ETags генерируются с использованием CRC32 (источник), сильные ETags генерируются с использованием MD5 (source).

Я использую DHC - REST/HTTP API Client с Если-Нет-Матч заголовок, он отлично работает (возврат 304 не изменен).

И я обнаружил, что это потому, что POSTMAN отправить заголовок NO-CACHE на сервер для целей тестирования

'cache-control': 'no-cache', 

Вы можете следить за this answer и отключить эту функцию, то все будет в порядке.

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