首页 > 解决方案 > 对话流中有没有办法在重新加载网页后保留会话的聊天记录?

问题描述

我使用 expressjs、reactjs 和 dialogflow 构建了一个聊天机器人。我想做的是,刷新页面时要保留的聊天记录。有没有办法做到这一点?(可能正在使用 sessionID?)

标签: node.jsreactjsexpressdialogflow-essessionid

解决方案


我确实找到了一种方法,只需几行代码

var messageList = document.querySelector('df-messenger') .shadowRoot.querySelector('df-messenger-chat') .shadowRoot.querySelector('df-message-list').shadowRoot.querySelector('#messageList');

..

然后将 messageList 的内容保存到浏览器中的 localStorage 对象,然后在页面加载时将其加载到 messageList 元素中

...

收到新消息事件

window.localStorage.setItem('chatBotHistory', messageList.innerHTML);

...

新页面的onload事件

document.querySelector('df-messenger') .shadowRoot.querySelector('df-messenger-chat') .shadowRoot.querySelector('df-message-list').shadowRoot.querySelector('#messageList').innerHTML = window .localStorage.getItem('chatBotHistory');


推荐阅读