如何在Laravel 5.8中生成如下所示的响应

时间:2019-04-06 08:19:50

标签: ajax validation laravel-5

这是我的ajax请求以验证错误结束时得到的响应...

{"readyState":4,"responseText":"{\"email\":[\"The email field is required.\"]}","responseJSON":{"email":["The email field is required."]},"status":422,"statusText":"Unprocessable Entity"}

如果请求成功处理,则希望以类似的格式生成响应。 希望详细说明。

浏览了这里已经发布的各种答案,但是没有一个能帮助我。 谢谢:)

1 个答案:

答案 0 :(得分:2)

由于这只是一个JSON,而laravel开箱即用地支持JSON共振,因此您唯一要做的就是返回包含数据的数组:

 Higher() {
    this.setState({
        min: this.state.guess,
        max: this.state.max,
    }, () => {
      this.setState({
        guess: ((this.state.min + this.state.max) / 2)
      }
    });
}
Lower() {
    this.setState({
       max: this.state.guess,
       min: this.state.min,
    }, () => {
      this.setState({
        guess: ((this.state.min + this.state.max) / 2),
      }
    });

}

Laravel将每个数组作为JSON返回,并将Route::get("/test", function() { $response = ["email" => ["The email field is required."]]; return [ "readyState" => 4, "responseText" => json_encode($response), "responseJSON" => $response, "status" => 422, "statusText" => "Unprocessable Entity" ]; }); 标头添加到HTTP请求。

上面的示例为您提供了准确的字符串:Content-Type: application/json

编辑: 要设置状态代码,您可以像这样使用{"readyState":4,"responseText":"{\"email\":[\"The email field is required.\"]}","responseJSON":{"email":["The email field is required."]},"status":422,"statusText":"Unprocessable Entity"}

response()->json()

Route::get("/test", function() { $response = ["email" => ["The email field is required."]]; return response()->json($response, 422); }); 返回response()的实例,因此您可以查找可能的参数:Illuminate\Routing\ResponseFactory

相关问题