2017-02-16 7 views
-1

Я пытаюсь создать запрос Ajax в laravel, но я столкнулся с 500 (Internal Server Error). Вот маршрут, который я создал:Laravel Ajax Запрос возвращает ошибку 500

Route::post('/ajaxtest', '[email protected]'); 

Это функция обновления, в данный момент она ничего не делает.

public function update(Illuminate\Http\Request $request) 
{ 
    // if ($request->isMethod('post')){  
//  return response()->json(['response' => 'This is post method']); 
// } 

// return response()->json(['response' => 'This is get method']); 
} 

И это код JQuery

function tryajax() { 
$.ajax({ 
    type: "POST", 
    url: './ajaxtest', 
    data: "", 
    success: function() { 
     console.log("Geodata sent"); 
    } 
}) 

};

На кнопке есть функция onclick.

+2

Удалить период с URL-адреса. Если это все еще продолжается, посмотрите на журналы своего сервера или в 'storage/logs' для подсказки. – aynber

+1

также посмотрите на вкладку сети инструментов разработчиков, чтобы узнать, какой URL-адрес вызывается и каков ответ – boroboris

+0

К сожалению, это не помогло. В журналах ничего нет. –

ответ

1

Возможно, это связано с csrf-protection middleware. У вас есть 2 варианта: сделать исключение или эхо-маркер внутри вашего запроса.

https://laravel-news.com/excluding-routes-from-the-csrf-middleware

Чтобы вы ошибки в следующий раз:

  • открытым хром DEV консоль
  • перейти к вкладке Сетевые
  • щелкните запрос ан вид предварительного подвкладке

enter image description here

+0

У меня есть мета тег в заголовке и csrf_field() внутри формы. –

+0

Но данные пустые, это должны быть данные формы (также содержащие токен csrf) –

+1

Я понял, я удалил Illuminate \ Http \ из функции. –

1

расположение:

<meta name="csrf-token" content="{{ csrf_token() }}"> 

сценарий:

function tryajax() { 
    $.ajax({ 
    type: "POST", 
    url: './ajaxtest', 
    data: "", 
    headers: { 'X-CSRF-TOKEN': $('meta[name=\'csrf-token\']').attr('content') } 
    success: function() { 
    console.log("Geodata sent"); 
    } 
}) 

};

Добавить csrf-token для запроса

+0

так много изменений между laravel 4 и 5. so painfull, чтобы опубликовать «старый» (3 года) сайт .. –

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