繁体   English   中英

如何在函数Meteor.loginWithFacebook()上传递更多数据?

[英]How to pass more data on function Meteor.loginWithFacebook()?

我正在使用

Meteor.loginWithPassword(email, password);

但是我想在创建用户时传递cookie。 我无法在服务器端访问Cookie,因此我需要通过它们。

另外,我无法接收到该用户的新ID,因为loginWithFacebook不会在回调中返回ID,因此我不知道该如何进行。

Accounts.onCreateUser(function (options, user) {
console.log(options);
//how I pass something to options here?
}
return user; 
});

那么我该如何解决这个问题呢?

恐怕您不能将任何东西传递给onCreateUser 但是您可以通过创建用于帐户创建的自定义Meteor方法来解决此问题。

Meteor.methods({
  "registerUser": function(email, password, favouritePony) {
    // You can use your custom parameter
    if (favouritePony === "Pinkie Pie") throw new Meteor.Error("Invalid pony");

    let userId = Accounts.createUser({email, password});
    // Do whatever you want with "userId" here
  }
});

在客户端:

registerUser(email, password, pony) {
  Meteor.call("registerUser", email, password, pony, (error, result) => {
    if (error) {...}
    Meteor.loginWithPassword(email, password);
  });
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM