如何从Firebase获取当前用户UID到Dialogflow webhook



我有一个Flutter项目,我曾经使用Dialogflow创建一个聊天机器人。用户需要先登录。这是获取Flutter中当前用户uid的代码:

getUid() async {
FirebaseAuth auth = FirebaseAuth.instance;
User? user;
user = await auth.currentUser;
setState(() {
uid = user!.uid;
});
}

为了将Flutter与Dialogflow连接起来,我使用了一个名为dialogflow_grpc的包,下面是从文本输入请求中检测意图的示例

DetectIntentResponse data = await dialogflow.detectIntent(text, 'ms-MY');
String fulfillmentText = data.queryResult.fulfillmentText;

对于webhook,我使用Node.js。在这里,我已经写了用户uid。我希望它使用基于当前登录用户的当前用户uid。我可以知道怎么做吗?

const ref = await db.collection('name').doc(uid)
.set({
name: name
});

try this:

getUid() async {
FirebaseAuth auth = FirebaseAuth.instance;
User? user;
user = await auth.currentUser;
return user!.uid;
}

之后加上:

getUid.then((uid) async {
const ref = await db.collection('name').doc(uid)
.set({
name: name
});
});

最新更新