V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
lovegoogle
V2EX  ›  程序员

如何解决开发过程中浏览器缓存造成的误报错问题?

  •  
  •   lovegoogle · 2023-12-18 17:15:47 +08:00 · 1228 次点击
    这是一个创建于 373 天前的主题,其中的信息可能已经有所发展或是发生改变。

    这个问题比较常见,简单来说就是自己改好了一份代码,部署运行后发现报错(比如 whitelable error 之类的),然后重新编译运行(代码没有改动),疯狂刷新浏览器又恢复正常了。

    这个问题比较常见(我个人认为是浏览器的问题,也可能是其他的原因,欢迎大神分享),但我觉得很容易忽略,而且有的时候对调试程序有着很大的时间浪费,本来自己代码是对的,但可能因为浏览器的原因浪费了不必要的时间

    PS:尽量不要推荐 Swagger 、Postman 之类的方案,因为有时间因为调试的需要必须有浏览器的支持。

    8 条回复    2023-12-18 22:09:20 +08:00
    DOLLOR
        1
    DOLLOR  
       2023-12-18 17:19:57 +08:00
    开发者工具里勾选 Disable cache
    tool2d
        2
    tool2d  
       2023-12-18 17:22:04 +08:00
    这属于基本功不扎实,在本地开发阶段,一定要声明 max-age=0

    https://stackoverflow.com/questions/38661942/ajax-304-not-modified-cant-receive-response
    vemier
        3
    vemier  
       2023-12-18 17:22:24 +08:00
    文件名加 hash 值
    qsnow6
        4
    qsnow6  
       2023-12-18 17:30:09 +08:00
    @tool2d #2
    生产环境上不同版本的静态文件,怎么更新缓存比较好
    tool2d
        5
    tool2d  
       2023-12-18 18:01:09 +08:00   ❤️ 1
    @qsnow6 大部分方案都是用 hash 作为文件名后缀,推荐这个。

    但是我自己网站比较特殊,我是把文件 hash 用程序硬写到 html/js 代码里,再动态取 indexeddb 文件,对比不一致,就联网重下一次资源文件。

    我 90%的资源文件,都是存到 indexedDb 里的。
    CEBBCAT
        6
    CEBBCAT  
       2023-12-18 18:14:06 +08:00
    可喜可贺的是楼主提问题的能力还是可以的,我把问题原样贴给 GPT 了,我看回答的几个点都挺到位的
    lovegoogle
        7
    lovegoogle  
    OP
       2023-12-18 19:30:41 +08:00
    @DOLLOR 你是专门用的 Chrome dev 版本还是用的普通版的 Chrome ?
    MXXXXXS
        8
    MXXXXXS  
       2023-12-18 22:09:20 +08:00
    ![Disable cache]( )
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4660 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 01:07 · PVG 09:07 · LAX 17:07 · JFK 20:07
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.