繁体   English   中英

如何在axios中打印laravel 5.5的验证响应

[英]How to print laravel's 5.5's validation response in in axios

我的代码在laravel 5.4上运行,升级后无法正常工作。 然后,我尝试查看网络中返回的响应对象。

这就是我所看到的

{message: "The given data was invalid.",…}
  errors:{userName: ["The user name has already been taken."], email: ["The 
     email has already been taken."]}

在我的axios中,我尝试管理消息“用户名已被使用”和“电子邮件已被使用”。

但我显示未定义。 这是我的代码。

.catch(function (error) {
       // This shows undefined. 
       console.log(error.errors]);
  });

全对象

{
"message": "The given data was invalid.",
"errors": {
    "userName": [
        "The user name field is required."
    ],
    "email": [
        "Email is required!"
    ],
    "password": [
        "The password field is required."
    ],
    "lastName": [
        "The last name field is required."
    ],
    "userType": [
        "The user type field is required."
    ]
} 
}

Axios传递的响应值将具有一个data字段,其中将包含您的值。 所以你的代码需要

.catch(function (error) {
   // This shows undefined. 
   console.log(error.data.errors);
});

像这样检查您在.then的回复

.then(function(response) {
    console.log(response.data.errors);
});

感谢您对大家的帮助。 我在您的帮助下解决了这个问题。 这是我的方法。

 .catch(error => {
     console.log(error.response.data.errors.email[0])
  });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM