无法读取未定义的 属性 "authenticate" - 使用 Account Kit 解析服务器
Cannot read property "authenticate" of undefined - Parse Server with Account Kit
问题描述
我正在使用 Parse Server 3.0.0 并试图让它与 Facebook 的帐户工具包一起使用。我按照文档中的说明进行了以下操作:
- 在 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"
},
}
});
- 通过 phone 验证在我的 Android 中获取访问令牌。
- 在云代码中调用 _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`
环境设置
- 服务器
- 解析服务器版本:3.0.0
- 操作系统:Ubuntu
- 硬件:-
- 本地主机还是远程服务器? (AWS、Heroku、Azure、Digital Ocean 等):Google 云平台
使用这个:
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))
});
问题描述
我正在使用 Parse Server 3.0.0 并试图让它与 Facebook 的帐户工具包一起使用。我按照文档中的说明进行了以下操作:
- 在 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"
},
}
});
- 通过 phone 验证在我的 Android 中获取访问令牌。
- 在云代码中调用 _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`
环境设置
- 服务器
- 解析服务器版本:3.0.0
- 操作系统:Ubuntu
- 硬件:-
- 本地主机还是远程服务器? (AWS、Heroku、Azure、Digital Ocean 等):Google 云平台
使用这个:
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))
});