我目前正在构建一个具有Laravel API和Vuejs前端的应用程序。对于API,我正在使用spatie/laravel-responsecache
包来处理缓存。
如果我直接访问网址,例如http://api.mysite.com/users
,然后提取数据并正确缓存。
但是,如果网址是http://api.mysite.com/messages
(我尚未直接访问过的一个)是通过前端的axios提取的,未缓存。同样,如果我直接去访问它,将其缓存,然后再从前端获取它,则将其缓存。
如何强制axios使用服务器端缓存而无需预先加载URL?
答案 0 :(得分:0)
如果您查看default caching profile,就会发现它ignores ajax requests
。
复制此文件,将其移至您自己的代码,然后删除:
if ($request->ajax()) {
return false;
}
然后更新config/response_cache.php
文件,并将cache_profile
条目指向您的文件。