Несколько доменов указываются на один и тот же бэкэнд API REST Symfony2:
example.com/api/post/abc
embed.example.com/api/post/abc
whitelabeled.com/api/post/abc
Цель состоит в том, чтобы иметь одинаковый ответ для всех доменов при использовании Symfony HttpCache. Это верно для начального GET
запрос.
Однако когда я отправляю PUT
запросить example.com/api/post/abc
Symfony автоматически аннулирует этот маршрут для example.com
домен. Но это не делает маршрут недействительным для других доменов. Теперь, когда я делаю GET
запрос, который я оставил с:
example.com/api/post/abc
— Ответ с последними даннымиembed.example.com/api/post/abc
— Старый кешированный ответwhitelabeled.com/api/post/abc
— Старый кешированный ответКак можно автоматически аннулировать ответ во всех существующих доменах для определенного маршрута?
Я полагаю, вы можете попробовать использовать FOSHttpCacheBundle http://foshttpcachebundle.readthedocs.org/en/latest/features/invalidation.html и аннулировать кеш через его службу при действии контроллера PUT
Других решений пока нет …