【问题标题】:Merging Users in Kinvey在 Kinvey 中合并用户
【发布时间】:2016-04-29 00:25:43
【问题描述】:

情况:

  1. 用户 A 在我们的应用程序中注册一个帐户并登录。
  2. 出于任何原因退出。
  3. 使用 Facebook 社交登录再次登录到应用程序,并使用与该帐户关联的电子邮件地址相同的帐户登录 原注册有。
  4. 为此登录创建了第二个帐户,系统中存在 2 个帐户。

如何在社交登录期间(通过查询该电子邮件是否存在)自动或使用用户收集业务挂钩(如果使用业务挂钩,请您提供一个示例说明我如何将这些帐户合并到一个帐户中)会这样做,因为对于此特定目的,在线文档尚不清楚)。

注意事项:

  • Kinvey 后端
  • 带有 facebook 插件的 Phonegap
  • Jquery 移动版
  • 希望在登录期间合并帐户或查找现有帐户并为其添加社交身份
  • 假设我无法删除用户
  • 最好使用 PreSave Kinvey 业务逻辑挂钩来完成此步骤

干杯,

【问题讨论】:

    标签: facebook cordova phonegap-plugins kinvey phonegap-facebook-plugin


    【解决方案1】:

    我设法创建了自己的自定义端点,基本上实现了用户合并。

    如果用户存在 kinvey 帐户,然后尝试使用与 kinvey 用户匹配的电子邮件地址使用 facebook 登录,我使用以下端点代码向现有用户添加社交身份,然后尝试使用登录该用户(此功能之所以起作用,是因为我们为未登录系统的用户维护了一个访客登录)。

    希望这对某人有所帮助。

    function onRequest(request, response, modules) {
      var users = modules.collectionAccess.collection('user');
      var social = request.body.social;
      users.findAndModify({"username":request.body.email},{$set:{"_socialIdentity":social}},
      function(err,result){
        if(err){
          response.error(err);
          response.complete();
        }else{
         if(!result._id){
           response.body = {message:"No User Found Matching This Email"};
           response.complete();
         }else{
           response.body = {message:"User Was Hopefully Updated"};
           response.complete();
         }
        }
      });
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-10
      • 1970-01-01
      • 2013-11-14
      • 2019-06-09
      • 1970-01-01
      相关资源
      最近更新 更多