无法读取未定义的 属性 "authenticate" - 使用 Account Kit 解析服务器

Cannot read property "authenticate" of undefined - Parse Server with Account Kit

问题描述

我正在使用 Parse Server 3.0.0 并试图让它与 Facebook 的帐户工具包一起使用。我按照文档中的说明进行了以下操作:

  1. auth 中配置 facebookaccountkit 传递给 ParseServer()

var polaris = new ParseServer({
  databaseURI: 'mongodb://localhost:27017/polaris',
  cloud: __dirname + '/cloud/main.js',
  appId: 'polarisAppId',
  masterKey: 'polarisMasterKey',
  serverURL: 'http://' + ipAddress + ':1337/polaris',
  auth: {
    facebookaccountkit: {
      appIds: ["app_id_here"],
      appSecret: "app_secret_here"
    },
  }
});
  1. 通过 phone 验证在我的 Android 中获取访问令牌。
  2. 在云代码中调用 _linkWith() 为:

let accountKitAuthData = {
    "id": accountKitId,
    "access_token": accessToken,
    "last_refresh": lastRefresh
}

let user = new Parse.User()
user._linkWith('facebookaccountkit', accountKitAuthData).then(function (user) {
    console.log("linkWith method finished ")
    console.log("user object type " + (typeof user))
});

然而,在这之后,我收到以下错误:

(node:21807) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'authenticate' of undefined`

我最好的猜测是 facebookaccountkit 提供商由于某种原因没有被注册,但我可能是错的。请帮忙!

预期结果

将用户与 facebookaccountkit 凭据关联起来

实际结果

错误:

(node:21807) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'authenticate' of undefined`

环境设置

使用这个:

let accountKitAuthData = {
    "id": accountKitId,
    "access_token": accessToken,
    "last_refresh": lastRefresh
}

let user = new Parse.User()
user._linkWith('facebookaccountkit', { authData: accountKitAuthData }).then(function (user) {
    console.log("linkWith method finished ")
    console.log("user object type " + (typeof user))
});