如何在 MySQL 中使用passport-facebook?
Posted
技术标签:
【中文标题】如何在 MySQL 中使用passport-facebook?【英文标题】:How to use passport-facebook with MySQL? 【发布时间】:2016-09-01 01:55:08 【问题描述】:我在使用 mysql 设置 passport-facebook 时遇到困难。
我到处都能找到 mongodb,使用 mongodb 可以将 profile._json 对象发布到数据库中,但使用 MySQL 你不能。
passport.use(new FacebookStrategy(
clientID : "",
clientSecret : "",
callbackURL : ""
), function (accessToken, refreshToken, profile, done)
db.query("SELECT * FROM users WHERE facebook_id = ?", [profile.id], function(err, user)
if (err)
return done(err);
else if (user.length == 0)
var name = profile.displayName;
var email = profile.emails[0].value;
var username = profile.username;
var provider = "facebook";
var facebook = profile._json;
db.query("INSERT INTO users (name, email, username, provider, token) VALUES (?, ?, ?, ?, ?)",
[name, email, username, provider, /* profile._json?? */], function(err)
)
else
return done(err, user);
);
);
profile._json 需要保存的内容和它们的类型,以便我可以在 MySQL 数据库中创建字段?
是否有可能我应该设置 mongodb 并将该信息保存在那里,其余的使用 MySQL 数据库?我还在为我的 API 使用谷歌身份验证。
【问题讨论】:
【参考方案1】:试试这个
let user= Facebook_ID: profile.id, First_Name: profile.displayName, FB_Private_Chat_ID: '000001100';
mysqlconnection.query('INSERT INTO users SET ?', user, (err, res) =>
if(err) throw err;
console.log('Last insert ID:', profile.id);
)
【讨论】:
以上是关于如何在 MySQL 中使用passport-facebook?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 typeorm 实体在 mysql 中使用现有表?