1

一年多来,我一直在使用 Dialogflow 实现内联编辑器进行测试。但突然从过去两天开始,我无法部署它,因为它显示错误 409

项目中区域 us-central1 中的函数 dialogflowFirebaseFulfillment ... 已存在

我还使用几个月前部署的旧代码进行了测试。但同样的结果。大约 2 个月前,我也转移到了节点 10。对于其他代理,它按预期工作正常,但此代理显示问题。

我已经尝试了几个建议,其中大多数与这个问题无关。

为什么它突然开始了,我该如何克服这个问题?

4

2 回答 2

0

我找到的解决方案是删除同一项目的firebase功能并在Dialogflow中重新部署该项目。首先将您的代码保存在其他地方。

非常重要的一点是,您需要成为 firebase 项目的管理员或要求您的管理员按照以下步骤操作。编辑器可以执行这些步骤,但您的问题不会得到解决。因此,请确保管理员应该执行此过程。

要首先实现这一点,您需要转到您的 firebase 项目。转到函数并在仪表板中将光标移动到表格上。您可以在该行的右侧看到三个点。单击它并选择删除功能。

之后打开您的 Dialogflow(如果已经打开,则刷新)。转到 Fulfillment 并部署那里已经存在的代码。将部署默认的实现代码,您可以看到 firebase 项目中的功能已创建。您现在也可以部署自己的代码。

于 2021-08-25T08:09:53.060 回答
0

我遇到过同样的问题。我的问题是由多次添加凭据或 ServiceAccounts 引起的(尽管我不知道我还把它包括在哪里)。

以下是 Firebase Admin SDK 配置片段:

var admin = require("firebase-admin");
var serviceAccount = require("path/to/serviceAccountKey.json");
admin.initializeApp({
  credential: admin.credential.cert(serviceAccount),
  databaseURL: "https://XXXXXXXXXXXX-rtdb.firebaseio.com"
});

在内联编辑器中添加 firebase 配置片段时:我只添加以下内容并且它可以工作。

var admin = require("firebase-admin");
admin.initializeApp({
  databaseURL: "https://XXXXXXXXXXXX-rtdb.firebaseio.com"
});
于 2021-10-14T11:30:27.183 回答