【发布时间】:2017-04-07 00:13:54
【问题描述】:
我正在使用 Auth0 进行用户管理,并尝试在注册时添加一些默认的 user_metadata。我的注册码如下所示:
// signs a user up
signup(email, password, callback, metadata){
const defaultVals = {
app_complete: false,
app_decision: 'unknown',
app_term: this.getAppTerm(),
nickname: '',
middle_initial: '',
current_age: '10',
}
const meta = Object.assign({}, defaultVals, metadata);
console.log(meta);
this.auth0.redirect.signupAndLogin({
connection: 'Username-Password-Authentication',
email,
password,
user_metadata: meta,
}, function(err, authResult) {
if (err != undefined) {
callback(err);
console.log(err);
return;
}
});}
问题是,每当我尝试传递 user_metadata 属性 app_complete: false 时,API 都会返回一个错误,指出数据类型 false 无效,并且只允许使用字符串。错误消息:无效的 user_metadata.app_complete 类型(只允许使用字符串)。
我知道 JSON 允许字符串以外的类型,因为我可以通过 Auth0 用户仪表板将其更改为 false。为什么auth0WebAuth 对象的注册方法会返回这个错误?
谢谢。
【问题讨论】: