我使用React Native创建了一个移动应用程序,我希望使用Laravel作为后端。我创建了一个注册页面,允许用户通过移动应用程序注册帐户。
当用户按移动应用程序上的注册按钮时。它会向laravel发送请求并返回响应。在我的Register.js
中async onRegisterPressed() {
try{
let response= await fetch('http://127.0.0.1:8000/api/register',{
method: 'POST',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
body: JSON.stringify({
user:{
name:this.state.name,
email:this.state.email,
password:this.state.password,
password_confirmation:this.state.password_confirmation,
}
})
});
let res= await response.text();
console.log("res is" + res);
}catch(errors){
}
}
但是在我的Laravel控制器中。我不知道如何返回表单验证的响应。
我的Api \ RegisterController
public function register(Request $request){
$this->validate($request,[
'name' => 'required|max:255|unique:users',
'email' => 'required|email|max:255|unique:users',
'password' => 'required|min:8|confirmed',
'gender'=>'required|bool'
]);
}
那么如何获取所有错误并将其返回到本机?它应该是json格式还是文本格式?希望你们能给我一些提示,因为我只是学会了原生的反应。
答案 0 :(得分:0)
如果您使用Laravel,它应该只是:
return redirect('view')->withErrors($validator);
你可以在这里阅读更多相关信息: https://laravel.com/docs/5.0/validation