我在这个页面上学习教程https://github.com/firebase/functions-samples/tree/master/google-sheet-sync.当我最终到达需要部署此项目的第11步时,我出现了以下错误:">必须在每个"hosting"配置中使用"public"提供一个公共目录"。经过一些谷歌搜索,我把我的firebase.jsom从这个改为:
{
"functions": {
"source": "functions"
},
"hosting": {
"rewrites": [
{
"source": "/oauthcallback",
"function": "oauthcallback"
},
{
"source": "/authgoogleapi",
"function": "authgoogleapi"
},
{
"source": "/testsheetwrite",
"function": "testsheetwrite"
}
]
}
}
到此:
{
"functions": {
"source": "functions"
},
"hosting": {
"public": "functions",
"rewrites": [
{
"source": "/oauthcallback",
"function": "oauthcallback"
},
{
"source": "/authgoogleapi",
"function": "authgoogleapi"
},
{
"source": "/testsheetwrite",
"function": "testsheetwrite"
}
]
}
}
它起到了帮助作用,项目成功部署,但在第12步,我得到了错误"站点未找到"。经过更多的谷歌搜索,我发现了这个https://github.com/firebase/functions-samples/issues/446,但我不明白最后的评论。完整的firebase部署包括托管意味着什么?
他在这里谈论的是表示Firebase应用程序的Hosting
部分的官方文档摘要。这可以通过使用命令firebase init
来实现。一旦运行,它将创建firebase.json
文件,您需要该文件来配置路径、主机等。
此外,正如官方文件所示:
firebase.json文件是使用firebase CLI部署资产所必需的,因为它指定将项目目录中的哪些文件和设置部署到firebase项目中。
因此,这意味着您需要运行"完全部署",这样您就可以正确创建jsojn文件,并将项目中的托管配置添加到常量FUNCTIONS_REDIRECT
中,如本注释所示。
一旦完成了这些操作,就不应该再出现部署问题了。
如果这些信息对你有帮助,请告诉我!