【问题标题】:Where to set Cache-Control when using Firebase Hosting + Cloud Run express server?使用 Firebase Hosting + Cloud Run 快速服务器时在哪里设置 Cache-Control?
【发布时间】:2021-05-12 09:22:58
【问题描述】:

当您使用 Firebase 托管 + Cloud Run(快速服务器)时,Firebase 托管就像您的客户端和服务器之间的代理一样。

我应该在哪里设置我的Cache-Control 标头?

  • firebase.json 中配置 Firebase 托管
  • 还是应该在 Cloud Run 上的 express 服务器中使用 res.set("Cache-Control")

【问题讨论】:

    标签: firebase express firebase-hosting cache-control google-cloud-run


    【解决方案1】:

    这两种方法都可以。但是你在firebase.json 上设置的任何内容都会覆盖你在express 代码上设置的内容。

    例如:Firebase Hosting 上的defaultCache-Controlprivate

    例如,如果您没有将任何Cache-Control 添加到您的firebase.json 并且您将res.set("Cache-Control","no-cache"); 添加到您的快速回复中,那么您的回复将是no-cache,正如您所期望的那样。

    但如果同时您将这样的内容添加到您的firebase.json,它将覆盖您的res.set() 调用:

    {
      "source": "/**",
      "headers": [{
        "key": "Cache-Control",
        "value": "public"           // OR EVEN IF YOU EXPLICITLY SET "private", WHICH IS THE DEFAULT
      }]                            // IT WILL OVERWRITE WHAT YOU SET ON YOUR SERVER WITH res.set() 
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-12-28
      • 1970-01-01
      • 1970-01-01
      • 2021-03-25
      • 1970-01-01
      • 1970-01-01
      • 2022-08-05
      相关资源
      最近更新 更多