You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React+VitePWA配置Workbox:CSV文件NetworkFirst策略不生效求助

解决React + VitePWA中CSV文件的Workbox NetworkFirst策略配置问题

你的问题出在urlPattern的正则匹配上——当前配置的/data\/(.*?)/是用来匹配包含data/路径的URL,但你的示例CSV文件URL是https://testing.s3.eu-central-1.amazonaws.com/data.csv?x-id=GetObject,这个URL里没有data/路径,只有文件名带data,所以这条规则根本没生效,CSV文件自然还是用默认策略从磁盘缓存读取。

要让所有.csv后缀的文件都采用NetworkFirst策略,把urlPattern改成匹配.csv结尾的正则即可,同时兼容后面带查询参数的情况:

globPatterns: ['**/*.{js,css,html}', '**/*.{svg,png,jpg,gif}'],
runtimeCaching: [
  {
    urlPattern: /\.csv(\?.*)?$/,
    handler: 'NetworkFirst',
    options: {
      cacheName: 'csv-cache', // 建议改成更明确的缓存名称,方便后续调试区分
    },
  },
],

如果需要更精准的匹配(比如只针对该S3存储桶下的CSV文件),可以把正则细化为:

urlPattern: /^https:\/\/testing\.s3\.eu-central-1\.amazonaws\.com\/.*\.csv(\?.*)?$/

修改后,所有符合规则的CSV文件都会优先从网络获取最新内容,网络不可用时才会使用缓存版本。

内容的提问来源于stack exchange,提问作者PrinceLoren

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 23:45:47