PassportJS获取Facebook用户位置
我试图设定我的策略,以两种方式获得用户的家,而这两者都不起作用。 有没有人有PassportJS代码来获取用户的地址(只是城市和州)?
策略尝试“位置”和“地址”:
profileFields: ['id', 'name','picture.type(large)', 'emails', 'displayName', 'location', 'address', 'about', 'gender'],
试图获得使用地址,如在这里看到的portablecontacts.net :
user.facebook.location = profile.address.locality + ', ' profile.address.region;
编辑:更简单的答案
这些位置字段尚未映射到从其便携式联系人模式到Facebook自己的模式的代码中。 你可以看到这里的地图(以及这两个字段的缺失)。
相反,只需直接使用Facebook模式。 所以profileFields数组应包含location
字段,然后当您调用身份validation时,您需要从Facebook请求该字段:
passport.authenticate('facebook', { scope: ['email', 'public_profile', 'user_location'] }));
请注意,在范围数组中,它被称为user_location
但在profileFields数组中它只是location
- 张贴到Facebook错误:'(#200)用户没有授权应用程序执行此操作',键入:'OAuthException',代码:200
- Facebook使用护照从Androidlogin到节点js服务器
- 使用casperjs“使用Facebooklogin”实现
- 在Facebook中,使用nodejsselect页面的date范围见解
- 如何解决,如果EAI_AGAIN错误发生在Facebook Messenger平台上?
- 护照 – 脸书 – 不能得到about_me和电子邮件configuration文件字段
- 与Facebookcallback函数的CORS错误
- 如何在没有会话的Facebook Passport之后redirect到之前的URL
- meteor不能访问个人资料图片