我一直在尝试(并且成功)使用Autoform为我的用户创建自定义注册流程。
我正在使用Collection2并为我的Autoform字段创建了RegistrationSchema
并处理验证。
流程如下:
- 将autoform与meteor方法和自定义模式一起使用
- 在流星方法中使用Account.createUser
这里的问题是当使用Account.createUser
服务器端时(因为我们使用的是meteor方法),它不会记录用户。
我在那里做的是将用户电子邮件和密码传递给在客户端运行的meteor方法的回调(参见要点中的文件server - methods.js
和client - sign-up.js
),然后执行登录。
https://gist.github.com/gabriel-dehan/3f78d94f6a035c89595d
它工作正常但似乎真的不安全,像这样传递用户凭据。
这有问题吗?如果是这样,我该如何解决?我看到两个选择:
- 做服务器端登录,但我不知道如何。
- 将Account.createUser
逻辑传输到客户端,但是当autoform调用服务器端Meteor.method我不知道如何告诉他调用客户端方法。
对此问题有何看法?太棒了!
感谢。
答案 0 :(得分:0)
我不相信服务器端登录是可能的,除非有办法通过meteor方法返回登录令牌,然后在回调中调用login。
如果你只使用simpleschema验证方面,我会使用客户端验证器,例如mesosphere https://atmospherejs.com/copleykj/mesosphere,并抛出autoform进行登录,因为你只需要三个输入。
答案 1 :(得分:0)