Мы используем ETag
заголовки для условных запросов в нашем REST API. Некоторые ресурсы имеют различное содержимое в зависимости от текущего аутентифицированного пользователя (некоторые пользователи видят больше, другие - меньше информации). ETag
в настоящее время вычисляется на «полных» ресурсах, то есть все пользователи получают одинаковые ETag
, если общий ресурс не изменяется. Это не проблема, если клиент не кэширует ETag
ресурса в сеансах пользователя, что, по-видимому, происходит в браузерах. Затем второй пользователь увидит кэшированную версию ресурса от первого пользователя, поскольку сервер сообщает клиенту / браузеру, что он не изменился. Это может даже превратиться в проблему безопасности, если первому пользователю разрешено видеть больше, чем второму пользователю.
Я искал в Интернете, но не нашел никакой информации о ETag
s и сеансах пользователя. Есть ли лучшие практики или рекомендации, как обращаться с такими случаями?