使用axios代替在Workbox中获取请求

时间:2019-04-16 00:08:00

标签: vue.js axios workbox

我正在尝试使用工作箱在项目中保存一些内容,我已经保存了所有的js和css文件,字体等,但缺少一件事,那就是我项目的内容存储在我的电脑,我使用axios来获取我的数据库数据,工作箱似乎忽略了axios发送的请求,我进行了测试,并将一个axios请求更改为“获取”,并且它成功了,成功缓存了,有什么方法可以使用axios可以正常工作吗?

这是我的代码:

importScripts("https://storage.googleapis.com/workbox-cdn/releases/4.3.0/workbox-sw.js");

workbox.routing.registerRoute(
  new RegExp('http://localhost/Odr/connections/'),
  workbox.strategies.cacheFirst(),
);

1 个答案:

答案 0 :(得分:0)

关于axios并没有什么具体规定可以阻止Workbox截获其请求,或者通常不会阻止其在服务工作者中触发fetch处理程序。从客户端页面制作的XMLHttpRequest确实会触发fetch处理程序。

我建议您使用debug build的Workbox(如果在http://localhost上进行开发,则为默认设置),然后在尝试axios请求时打开JavaScript控制台。有一些调试消息可以说明Workbox的路由逻辑,包括特定请求是否触发路由。