为啥我的 AWS-Amplify 注册请求不包含某些参数?

Posted

技术标签:

【中文标题】为啥我的 AWS-Amplify 注册请求不包含某些参数?【英文标题】:Why does my AWS-Amplify sign up request not include some parameters?为什么我的 AWS-Amplify 注册请求不包含某些参数? 【发布时间】:2021-09-04 09:21:04 【问题描述】:

为什么我的 Vuejs 应用程序中的 AWS Amplify 注册请求不包含指定参数?

我正在调用 AWS Amplify 库中描述的 signUp 方法...

/**
 * Sign up with username, password and other attributes like phone, email
 * @param String | object params - The user attributes used for signin
 * @param String[] restOfAttrs - for the backward compatability
 * @return - A promise resolves callback data if success
 */
signUp(params: string | SignUpParams, ...restOfAttrs: string[]): Promise<ISignUpResult>;

这是我调用 signUp 方法的包装方法...

export async function register(email, password, username, phone_number) 

  return Auth
    .signUp( username, password , email, phone_number)
    .then(data => console.log())
    .catch(error => 
      notification.warning(
        message: error.code,
        description: error.message,
      )
    )

通过控制台日志语句,我确认我正在将正确的变量传递给包装器方法。比如……

email: Sally1234@gmail.com, 
password: Sally123!, 
username: Sally1234@gmail.com (yes, this username matches the email - to satisfy another Amplify requirement),
phone_number: +18081124351

这是我遇到的错误。

InvalidParameterException
Attributes did not conform to the schema: name: The attribute is required phone_number: The attribute is required

【问题讨论】:

【参考方案1】:

尝试像这样调用函数:

Auth.signUp( username, password, attributes:  email, phone_number   );

【讨论】:

以上是关于为啥我的 AWS-Amplify 注册请求不包含某些参数?的主要内容,如果未能解决你的问题,请参考以下文章

为啥请求中不包含授权标头? - 认证0

为啥我的 Ajax 请求包含数据类型:“jsonp”错误? [复制]

尝试将我的“aws-amplify”包导入我的入口点时收到 JSLint 错误

为啥 Spring MockMvc 结果不包含 cookie?

在 React 中使用 aws-amplify 将文件上传到具有联合身份的 S3 时出错

为啥我的IE快捷方式每次开机都要重新创建一次啊!有啥办法使之不丢失