首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在MySQL中使用passport-facebook?

如何在MySQL中使用passport-facebook?
EN

Stack Overflow用户
提问于 2016-05-06 13:22:52
回答 1查看 563关注 0票数 1

我在用MySQL设置passport-facebook时遇到了困难。

无论我往哪里看,我都能找到mongodb,使用mongodb可以将profile._json对象发送到数据库中,但使用MySQL则不能。

代码语言:javascript
复制
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);
        }

    });
});

为了在MySQL数据库中创建字段,需要保存的profile._json内容及其类型是什么?

有没有可能我应该建立mongodb并将这些信息保存在那里,然后使用MySQL数据库来完成剩下的工作?我的API也使用了google身份验证。

EN

回答 1

Stack Overflow用户

发布于 2019-03-31 21:18:37

尝尝这个

代码语言:javascript
复制
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);
  })
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37064804

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档