gpt4 book ai didi

javascript - 根据 session ID 创建对象变量

转载 作者:行者123 更新时间:2023-12-03 03:47:22 24 4
gpt4 key购买 nike

我正在用 JS 为 Alexa 编写一项技能,但在创建用户对象时遇到问题,因此超过 1 个用户可以同时使用我的代码。我尝试在代码开头以这种方式执行此操作:

class MyUser {
constructor() {
this.name= "";
this.number = 0;
this.question= "";
}
}
var myUser = new MyUser();

但这没有意义:(我如何根据 session 创建用户?每个 Alexa 用户都会获取 session userId,每次用户启动我的技能时我都会获取此变量:

event.session.user.userId

如何动态使用此功能?因此,如果每个用户都启动我的脚本,我确信会创建一个新的用户对象,并且 2 个或更多人可以并行使用我的技能

这样的事情有意义吗?

class MyUser {
constructor() {
this.name= "";
this.number = 0;
this.question= "";
}
}
event.session.user.userId = new MyUser();

那么我能够进入值名称吗?像这样? console.log("event.session.user.userId.name ");

我想在那个地方创建一个 session 用户对象:

var newSessionHandlers = {
"NewSession": function () {

console.log(this.event.session.user.userId);

this.emit("Welcome");
}

最佳答案

在您的情况下,event.session 是什么?一般来说, session ​​保持的解决方案有很多。如果这个应用程序是网络服务器,您可以使用完整的库 session 提供程序,像中间件一样实现。对象将存在于主机进程中,就像 Express 中的这样:

app.set('trust proxy', 1) // trust first proxy
app.use(session({
secret: 'keyboard cat',
resave: false,
saveUninitialized: true,
cookie: { secure: true }
}))

如果您需要一些持久性,请使用store选项,例如store:new RedisStore,
在之前的配置中。

关于javascript - 根据 session ID 创建对象变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45325069/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com