如何使用快速会话Node.js在对话流中保持会话值

时间:2018-04-23 07:35:54

标签: node.js dialogflow express-session

我正在开发谷歌对话框流程。我想跟踪用户名和密码。我决定在Node.js中使用express-session。会话值在本地时起作用,在使用对话框流程应用程序时不起作用。如何跟踪会话中的值?

2 个答案:

答案 0 :(得分:0)

您可以使用req.session对象来存储会话。 示例

setTimeout

您可以参考此内容获取更多信息

https://github.com/expressjs/session

答案 1 :(得分:0)

当您使用Dialogflow webhook时,Node.js会话和HTTP会话不可用,因为Dialogflow不像浏览器那样。

您需要在Dialogflow Context参数中存储所需信息,然后稍后再读取参数中的值。具体如何执行此操作取决于您在Dialogflow中使用的库以发送回复,或者您只使用JSON进行此操作。

然而,上下文仅在有限的时间内持续(人类对话往往具有短期参考,使用其他方式进行长期参考)。如果您需要保留更长时间的用户信息,则需要将信息存储在数据存储中,例如根据特定于平台的用户ID键入的数据库。

(目前尚不清楚为什么要提示用户输入用户名和密码,但这些似乎是作为会话代理的一部分要求的奇怪事情,并且通常在将对话交给Dialogflow之前处理。 )