Мне было интересно, можно ли сделать недействительным кешированный объект по URL-адресу.
Скажем, у меня есть URL-адрес /api/0.1/user и URL-адрес /api/0.1/userFriends, что я хотел бы знать, есть ли способ сделать /api/0.1/user недействительным, когда запрос PUT к / api /0.1/userMedia сделано. Однако он должен только аннулировать кеш с помощью авторизации HTTP-заголовка. поэтому в основном только аннулируют кеш для пользователя, который выполнил запрос PUT.
Я считаю, что мне нужна конфигурация запрета, чтобы эта работа работала, но я новичок в лаке, поэтому я буду очень признателен!
Это должно быть возможно. Если у вас в vcl_recv есть что-то подобное:
sub vcl_recv {
if (req.request == "PUT") {
http.req.x-url = regsub(req.url, "(/api/0.1/user)Media", "\1");
ban_url("^" + x-url);
unset req.http.x-url;
}
}
Это совершенно не проверено. "man vcl" для получения дополнительной информации о синтаксисе и семантике vcl.