2015-05-28 32 views
0

Я реализовал вызов jQuery ajax контроллеру в Laravel 4. Но он всегда возвращает ошибку.Laravel 4 Запрос 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». На самом деле я заметил это сейчас, ответ [] «Работа Done» вместо «работы»

ответ

0

JQuery ждет формата JSON, как об изменении вашего ответа на что-то вроде:

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

Я попытался это, но все равно не работает. Есть ли способ узнать об ошибке? Я использовал Chrome и пошел проверять элемент и на вкладке сети, запрос показывает, что возвращается строка «Job Done». Но все же «Fail» записывается в консоль – Anoukh

+0

Каковы значения в заголовке «Принять» вашего запроса и заголовке «Content-Type» вашего ответа? (используйте инструменты Chrome) –

+0

Заголовок ответа Content-Type: application/json .. Заголовок запроса Accept: */* – Anoukh

Смежные вопросы