gpt4 book ai didi

firebase - 如何使用 Firebase Hosting 在 Flutter 中设置 404 Not found 页面

转载 作者:行者123 更新时间:2023-12-04 14:52:42 27 4
gpt4 key购买 nike

我正在尝试使用 Flutter 在我的网站中显示自定义的 404 not found 页面。
我正在使用以下代码:

MaterialApp(
debugShowCheckedModeBanner: false,
initialRoute: "/",
routes: {
"/": (context) => Scaffold(),
"/test": (context) => TestPage()
},
onUnknownRoute: (settings) {
return MaterialPageRoute(builder: (_) => Scaffold(
body: Center(
child: Text("Page not found !"),
),
));
},
我已经重建我的应用程序并使用 Firebase 托管进行部署。但是,如果我输入错误的网址,我会看到这一点:
enter image description here
由于我使用的是 flutter,因此我真的不想添加 .html 文件,即使它可以工作。
我宁愿显示一个内置 dart 的自定义页面。
在这种情况下,如何显示我的自定义“找不到页面”?
编辑 :
这是我现在的 firebase.json文件 :
{
"hosting": {
"cleanUrls": true,
"public": "build/web",
"ignore": [
"firebase.json",
"**/.*",
"**/node_modules/**"
],
"rewrites": [
{
"source": "**",
"destination": "/index.html"
}
]
}
}
我尝试过的方法和无效的方法:
  • 没有重写
  • 进行了重写,希望 Flutter 路由能够领先
  • 在 localhost
  • 测试项目
  • 根据 documentation 将 Flutter 路由策略从 URL 更改为 PATH

  • 到底 :
  • 我现有的网站页面运行良好
  • 所有错误的 url 都被重定向到/index.html

  • 唯一有效的是:
  • 在我的/build/web 文件夹中添加一个 404.html 文件
  • 删除 firebase.json 中的重写

  • 然而,这不是我想要的,我想改为显示我的 not_found_page.dart。
    这可能是一个 Flutter 问题,我在此期间保持打开状态,但我会在 Flutter 方面进行更深入的挖掘。

    最佳答案

    只需在您的根目录中添加一个 404.html 页面并将其重定向到您自己的自定义 Flutter 构建页面。
    你也可以学习处理

    'Famous 404 page not found !' from here

    关于firebase - 如何使用 Firebase Hosting 在 Flutter 中设置 404 Not found 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68790682/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com