我的请求和响应过程没有问题,直到我尝试解析/处理发生错误时从laravel返回的json数据。
我想在上传的文件大于系统接受的大小时显示消息错误。我的 Action 是这样的:
...
if($_FILES['file1']['size'] > 0)
{
http_response_code(413);
return Response()->json(["errorMsg" => "Your file is too large!"], 413);
}
....
客户端代码:
$.ajax({
type: "POST",
url: "/anuncio/realizar_upload_foto",
contentType: false,
cache: false,
dataType: "JSON",
processData: false
...
...
error: function (xh, jso)
{
alert(jso.errorMsg); //undefined here
}
});
最佳答案
按照你的方式,你应该在xh.responseJSON.errorMsg
中找到你的数据
但是您应该遵循 REST Api 实践。
首先你应该返回json代码200 并传递您的状态消息,例如。
return response()->json([
"status" => "success",
"data" => [....yourdata]
], 200);
错误情况
return response()->json([
"status" => "error",
"msg" => "Your file is too large!"
], 4**);
关于javascript - 如何使用 Jquery ajax 从 Laravel 输出 json 响应(发生错误时),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44749235/