我有一个ember-cli应用程序,使用ember-simple-auth和torii针对fb进行身份验证。该过程完成后,我将获得一个身份验证码。
我也有一个用Node / Sails / Waterlock构建的API
我以为我可以使用Waterlock facebook auth将代码推送到
http://my-node-app.com:1337/auth/facebook_oauth2?code= {{some-code}}
然后可以与FB进行握手,获取我的个人资料信息,创建我的用户并登录。
我认为,如果我已经通过API注册了,则可以正常工作,并且确实登录了我的API,只是没有用户数据,没有fb id。
使用有效代码调用上述URL的响应是:
{
auth: {
facebookId: null,
name: null,
createdAt: "2015-01-10T15:05:44.417Z",
updatedAt: "2015-01-10T15:05:44.459Z",
id: 10,
user: 10
},
createdAt: "2015-01-10T15:05:44.447Z",
updatedAt: "2015-01-10T15:05:44.447Z",
id: 10
}
这是/ users的结果
{
users: [
{
attempts: [
12
],
jsonWebTokens: [ ],
auth: 10,
createdAt: "2015-01-10T15:05:44.447Z",
updatedAt: "2015-01-10T15:05:44.447Z",
id: 10
}
]
}
我应该能够做到吗?还是我需要在api / auth / login上显式注册用户?type = facebook url?
[更新]
在这里查看代码https://github.com/waterlock/waterlock-facebook-auth/blob/master/lib/controllers/actions/oauth2.js,看来我是正确的...
该操作中的第一个调用是:
fb.confirmIdentity(req.query.code, accessTokenResponse);
在
accessTokenResponse
内部,它调用fb.getMe(userInfoResponse);
,在userInfoResponse中,它调用主waterlock框架engine.js以存储用户...因此从我的挖掘中应该可以...我不知道它在哪里掉下来。
最佳答案
它按预期工作,只是水锁未返回传递给它的fb错误()。我创建了一个请求请求,以便更轻松地调试此类问题。
https://github.com/waterlock/waterlock-facebook-auth/pull/3
关于node.js - waterlock fb auth-使用authcode注册,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27877641/