【问题标题】:Laravel 4 Ajax request always returns errorLaravel 4 Ajax 请求总是返回错误
【发布时间】:2015-08-10 08:07:13
【问题描述】:

我在 Laravel 4 中实现了对控制器的 jQuery ajax 调用。但它似乎总是返回错误。

我的 Ajax 调用

$.ajax({
    url: "/test",
    type: "POST",
    data: {
        'data': data,
        'data2': data2
    },
    success: function(e) {
        console.log("Success");
    },
    error: function() {
        console.log("Fail");
    }
});

控制者

public function doSomething(){    
    $data = $_POST['data' ];
    $data2 = $_POST[ 'data2' ];
    $userId = Auth::user()->id;

    DataHelper::addData($userId,$data,$data2);
    $response = "Success";
    return Response::json("Job Done");
}       

运行 Ajax 调用后,将显示 console.log("Fail");。但是当我检查对请求的响应时,json 字符串“Job Done”已经返回。 其实我现在注意到了,响应是 []"Job Done" 而不是 "Job Done"

【问题讨论】:

    标签: jquery ajax laravel-4


    【解决方案1】:

    jQuery 正在等待 json 格式,如何将您的响应更改为:

    return Response::json([
        'status' => 'Job Done'
    ], 200);
    

    【讨论】:

    • 我试过了,但还是不行。有没有办法找出错误?我使用 Chrome 并去检查元素,在网络选项卡中,请求显示返回了“作业完成”字符串。但是控制台中仍然记录了“失败”
    • 请求的“Accept”标头和响应的“Content-Type”标头的值是什么? (使用 Chrome 的工具)
    • 响应头 Content-Type:application/json.. 请求头 Accept:*/*
    猜你喜欢
    • 1970-01-01
    • 2013-01-21
    • 1970-01-01
    • 1970-01-01
    • 2013-11-15
    • 1970-01-01
    • 2018-04-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多