Firebase Hosting で、特定のURLを Cloud Run で実行させるように rewrites の設定をした。
一回目は期待通りに Cloud Run が実行されるが、二回目以降は Cloud Run が実行されない(Response は、一回目と同じになる)。
調べてみると、Firebase Hosting の手前のCDNがキャッシュして応答を返すみたいです。
ここ参照。
Cloud Run 側のプログラムでも対応出来るようですが、Response に毎回設定するのも面倒なので、
Hosting の設定(firebase.json)に↓のように記載しました。
{
・・・
"rewrites": [
{
"source": "/**",
"run": {
"region": "xxxxx",
"serviceId": "xxxxx"
}
}
],
"headers": [{
"source": "/**",
"headers": [{
"key": "Cache-Control",
"value": "no-store"
}]
}]
}
Firebase Functions ではキャッシュされないので少しハマりました。