gpt4 book ai didi

javascript - 页面重新加载时,Meteor 上的 session 值会重置

转载 作者:行者123 更新时间:2023-12-03 09:32:50 25 4
gpt4 key购买 nike

页面重新加载时,我定义的值不会保留。

if (Meteor.isClient) {
Session.setDefault('user_id', null);

Template.register.events({
'submit form': function(event){
var password = getHash(event.target.password.value);
var name = event.target.name.value;

console.log(Session.get('user_id')); //always show the default

var now = new Date();
password = getHash(password);

IDS.insert({name: name, online: false, password: password, last_activity: now,last_login: now, created_at: now},function(error,id){
Session.set('user_id',id);
//not persisting
});

event.target.password.value = '';
event.target.name.value = '';
}
});
}

我做错了什么?

最佳答案

正如 Marius Darila 在评论中所解释的那样, meteor session 不会在浏览器刷新时持续存在。它仅保留在客户端应用程序中。当您在浏览器上刷新页面时,它实际上会“重新启动”客户端,将其 session 重置为空状态。 (加上您在启动时默认设置的任何变量,例如设置为 nulluser_id)

默认情况下,在 Meteor 中,数据只能在应用程序重新启动后保留在 mongodb 数据库中。您可以找到许多社区包,为您提供其他数据持久性方法,例如 persistent session浏览器 localStorage 包,或 CollectionFS用于服务器端文件存储。

关于javascript - 页面重新加载时,Meteor 上的 session 值会重置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31446675/

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