我有一个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
});
});