我将 Flutter Web 应用部署到 Firebase Hosting,当我使用 Google Chrome 打开它时出现错误。
我尝试以隐身模式打开它,它有效!还尝试了另一个浏览器(Safari),它可以工作!
所以我认为这是一个缓存问题。我硬重置了ctrl + shift + r,但问题仍然出现。
还尝试更改我的
firebase.json
以包括
"hosting": {
"public": "build/web",
"headers": [
{ "source":"**.*", "headers": [{"key": "Cache-Control", "value": "max-age=0"}] }
],
但这并没有解决问题。我已经不知道这会是什么了。我没有在浏览器上保存任何内容..
附注我得到的错误是
NoSuchMethodError: method not found: 'a' on null
。我想我不明白是因为代码混淆/最小化。
编辑:
我正要提到cookie,然后看到你的编辑,并认为发生了其他事情,然后是你的第二次编辑。
我怀疑现在旧的 cookie 已经被覆盖了,它应该可以正常运行了。
您无法直接从 Firebase 托管中控制 cookie,但您可以设置到期日期。如果您不知道如何操作,这里有一些 Java 代码。
// Set a cookie that expires in 7 days
const expirationDate = new Date();
expirationDate.setDate(expirationDate.getDate() + 7);
document.cookie = `myCookie=myValue; expires=${expirationDate.toUTCString()}; path=/`;