执行流星重置时,登录用户的应用程序页面冻结
App page freezes for logged in user when performing meteor reset
当我有活动的 Meteor 登录令牌并使用 meteor reset
执行数据库删除时,应用程序页面在重新加载时严重冻结。感觉页面一直在加载,尽管页面上没有任何内容可以与我交互。浏览器控制台也挂起。在Chrome和Firefox上测试,面临相同的行为。但是当我尝试删除应用程序域的缓存时(通过浏览器设置,因为开发工具是无意识的(,一切都变得正常,我被重定向到登录页面(如我的路由配置中提供(,浏览器控制台显示以下消息:You've been logged out by the server. Please log in again
。这是我的铁路由器全局之前操作钩子:
Router.onBeforeAction(function () {
document.documentElement.className = 'gt-ie8 gt-ie9';
var currentUser = Meteor.user(),
currentRoute = this.route.getName(),
routeOptions = {},
userRoles,
userCompany, userTeam,
allowedRoutes;
// prevent not logged in user from visiting the app
// console.log(this.next);
if (!currentUser) {
this.redirect('login');
// return;
} else {
userRoles = currentUser.roles;
userRoles = userRoles.length ? userRoles : ['member'];
userCompany = currentUser.companyId || null;
userTeam = currentUser.teamId || null;
// get current user allowed routes (for highest role)
allowedRoutes = _.filter(SW.roles, function (appRoute, index) {
return userRoles.indexOf(index) > -1;
});
allowedRoutes = allowedRoutes && allowedRoutes.length ? allowedRoutes[0].routes : [];
// if not all routes are allowed
if (allowedRoutes.indexOf('*') === -1) {
// restrict if route is not allowed
if (!allowedRoutes.length || allowedRoutes.indexOf(currentRoute) === -1) {
this.redirect('member.self');
}
}
}
this.next();
}, {
except: ['enroll', 'login', 'logout']
});
我还需要提到,这是一个非常奇怪的滑溜问题,在生产服务器上发生的频率远远高于执行本地测试时。
最新的 Meteor 更新 (1.0.2.1( 似乎已经消失了这个问题。不过,这可能是因为我在项目中使用的快速渲染(在 2.1.0 中修复(的这个问题。
相关文章:
- 我想在AngularJS应用程序中创建一个输入数字框,用户不应该在该框上键入十进制数字.(一个整数输入框)
- 谷歌表单-根据分配给谷歌应用程序的工作为商业用户预先填充多项选择列表
- 正确传输和保护用户'web应用程序的密码
- 如何在网络应用程序中使用Firebase进行用户授权
- 我的购物应用程序不会将用户想要购买的东西相加,也不会打印总成本
- 通过chrome后台扩展或后台应用程序访问用户麦克风
- 在聊天应用程序中显示联机用户
- 如何获取运行我的 Web 应用程序的用户的 Windows 登录用户名
- 为用户应用程序托管 javascript 文件是否安全
- 捕获在Windows应用程序中启动其他应用程序的用户事件
- 计算喜欢我的帖子facebook应用程序的用户数量
- 如何在angularjs应用程序中注销后,通过浏览器后退按钮禁止用户访问上一页
- Meteor(JavaScript应用程序平台)|向用户帐户添加数据
- 网络应用程序的正确instagram身份验证方法(没有instagram帐户的用户)
- 如何在点击链接后从用户取消对话框中获得回调以选择移动应用程序
- 在我的html页面-web应用程序用户界面的一个选项卡中的另一个html页面中的选项卡
- 基于Rails的javascript应用程序的安全性:如何在渲染的javascript中验证用户的权限
- 如何为Meteor应用程序中的第一个用户分配特定角色
- Javascript:离开单页应用程序时的用户确认
- PHP/AAJAX多用户应用程序-数据正在以某种方式丢失