无法在 Firebase 上部署 Angular 应用程序

Posted

技术标签:

【中文标题】无法在 Firebase 上部署 Angular 应用程序【英文标题】:Cannot deploy angular app on firebase 【发布时间】:2016-05-23 22:28:23 【问题描述】:

这是我第一次尝试在远程服务器上部署 Web 应用程序。我选择 Firebase 来部署我的 angularJs 应用程序。这些是他们提供的步骤:

    npm install -g firebase-tools firebase init

    firebase login

    Error: Cannot run login in non-interactive mode. See login:ci to generate a token for use in non-interactive environments.

我不知道“see login:ci”是什么意思,但我试过了:

    firebase login:ci

我也写了question in their support groups,但还没有答案。

你知道我该怎么做吗?

我也愿意尝试在其他服务器上进行部署。 (只要它们是免费的)

【问题讨论】:

您使用的是什么操作系统和外壳?似乎 Firebase CLI 可能会将您的终端检测为非交互式 shell,并激活通常为 CI 服务器保留的模式。 在这里交叉发布:groups.google.com/forum/#!msg/firebase-angular/HAGcB--AG64/…。您可以在那里找到问题的答案。 有两个人在 google 群组中回复了您的帖子。如果他们的答案不清楚,请跟进。 大家好。谢谢你的回答。我使用的是 Git 的 shell(它通常接受 cmd 执行的所有命令),这就是问题所在。 (我切换到 powerShell 并且它工作)。 在 Windows Git bash 上,您可以使用 winpty 使其交互,在此处查看密切相关的主题 - ***.com/questions/68244224/… 【参考方案1】:

我使用的是 Git 的 shell(它通常接受 cmd 执行的所有命令),这就是问题所在。我切换到 powerShell 并且它工作正常。

【讨论】:

【参考方案2】:

当您已经使用 Git Bash 登录 Firebase CLI 时会出现此问题,您可以使用命令提示符(Windows 上的 CMD)等其他工具进行测试,在我的情况下显示“已以 xxxxx@gmail.com 身份登录”,所以没有问题。

firebase login

enter image description here

【讨论】:

您的回答与查询无关。如果使用 Git Bash 和命令firebase login,只会导致问题中所述的错误消息。已经登录的将不会显示。【参考方案3】:

我在安装 Firebase 并首次尝试登录时收到了同样的错误。

为了修复“无法在非交互模式下运行登录”的错误,我改用交互模式:

firebase login --interactive

然后我在浏览器中授予权限以成功登录 CLI。

注意:我的平台是 Windows 10 和 Git Bash,但我确信它也适用于其他平台。

【讨论】:

他们应该在官方步骤中提到这一点【参考方案4】:

2021 年,您应该使用:

ng add @angular/fire

和:

ng deploy

但是,在 Windows Git bash 上它们不起作用。而是使用:

winpty node_modules/.bin/ng.cmd add @angular/fire

winpty node_modules/.bin/ng.cmd deploy

并将这些添加到您的 package.json 脚本中 - 请参阅 ng add @angular/fire error Cannot run login in non-interactive mode

【讨论】:

【参考方案5】:

我在使用 git bash 时遇到了这个问题,然后我尝试了 VS 代码的 powershell,它成功了。所以我认为这是一个使用 CLI 的问题。

【讨论】:

以上是关于无法在 Firebase 上部署 Angular 应用程序的主要内容,如果未能解决你的问题,请参考以下文章

Angular 6.0 firebase 托管部署不起作用

Angular 8,Firebase 推送通知:无法在推送通知上获取调试器或自定义逻辑

在 Firebase 上重新加载 Angular 页面时找不到页面

Firebase 托管在部署 Angular 6 应用程序后显示欢迎页面?

Firebase Angular 应用程序未连接 Heroku 上的 h NodeJS 应用程序

为啥只有在部署到 Firebase 时才会在 Node.js 和 Angular 之间出现 CORS 错误?