我的browserId登录代码几乎完全来自here。但当我打开路由时,无论是否设置了loggedInEmail或其他设置,请求都会自动发送,这会导致一个永恒的刷新循环。我的Javascript代码是,当generated
navigator.id.watch({
'loggedInEmail': null,
'onlogin': (function (jmId_1_0) {
$.ajax({
'data': {
'assertion': jmId_1_0
},
'error': (function (jmId_1_1, jmId_1_2, jmId_1_3) {
alert(("login failure" + jmId_1_1));
}),
'success': (function (jmId_1_4, jmId_1_5, jmId_1_6) {
console.log(jmId_1_4);
}),
'type': "POST",
'url': "\/login"
});
}),
'onlogout': (function () {
$.ajax({
'error': (function (jmId_1_7, jmId_1_8, jmId_1_9) {
alert(("logout failure" + jmId_1_7));
}),
'success': (function (jmId_1_10, jmId_1_11, jmId_1_12) {
window.location.reload();
}),
'type': "POST",
'url': "\/logout"
});
})
});
$((function () {
$("#loginBtn").click((function (jmId_1_13) {
jmId_1_13.preventDefault();
navigator.id.request();
return false;
}));
}));无论用户是否单击了按钮,都将始终调用onlogin函数。它一定在browserId本身的某个地方,或者我做了一些根本错误的事情。
完整的模板代码可以在here上找到。
发布于 2012-09-13 04:14:08
这个问题似乎是由loggedInEmail的错误设置引起的。
https://stackoverflow.com/questions/12393392
复制相似问题