gpt4 book ai didi

MeteorJs "loginWIthPassword"似乎在方法中不起作用

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

在方法中调用时,“Meteor.loginWithPassword”函数似乎不起作用。

我想使用自动表单创建我的登录表单,因此我创建了一个回调方法,该方法在用户提交登录表单后被调用。表单以正确的方式被调用,但 loginWithPassword 函数似乎不起作用。

这是我的方法(在客户端和服务器端)

Meteor.methods({
autoform_test_login : function (doc) {
console.log('Called login method');
if (Meteor.isClient) {
Meteor.loginWithPassword('test', 'test', function(e) {
if (e) {
console.log(e);
}
});
}
}
});

我的自动表单在提交时调用此方法:
{{#autoForm schema="Schema_Login" id="form_login" type="method" meteormethod="autoform_test_login"}}
....

提交此表单时,我收到此错误:
 Error: No result from call to login {stack: (...), message: "No result from call to login"}

当我现在打开浏览器控制台并输入:
Meteor.call('autoform_test_login');

我会得到同样的错误。

但是:当我在控制台中键入以下内容时,它可以工作(现在的错误是:找不到用户名):
Meteor.loginWithPassword('test', 'test', function(e) {
if (e) {
console.log(e);
}
});

我的方法绝对没有别的,然后这个剪断了所以我问自己这里出了什么问题。

附:
我知道我添加了“test”作为用户名和“test”作为密码——它只是为了测试。即使输入是正确的,错误也总是相同的。

最佳答案

好的,所以我得到了回复,现在我知道为什么这没有按预期工作。

  • loginWithPassord只能在客户端执行。
  • 当您在客户端使用 Meteor.methods 时,它仍然会在服务器上运行您在其中定义的函数。这就是为什么在 Meteor.methods 函数中调用 loginWithPassword 不起作用的原因。
  • 只需在客户端的任何其他位置使用此功能即可。例如 - 直接在某个模板事件中。

  • 我花了很长时间才找出为什么它不起作用。

    关于MeteorJs "loginWIthPassword"似乎在方法中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28157945/

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