在 Kinvey 中合并用户

Merging Users in Kinvey

情况:

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

如何在社交登录期间(通过查询该电子邮件的存在)自动或使用用户收集业务挂钩(如果有业务挂钩,请提供示例)将这些帐户合并为一个帐户我将如何执行此操作,因为此特定目的的在线文档尚不清楚。

备注:

干杯,

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

如果用户存在 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();
     }
    }
  });
}