2016-07-21 2 views
0

Я пытаюсь сделать вызов ajax методу почты Laravel. Но я получаю MethodNotAllowedHttpException. Одной из возможных проблем может быть несоответствие типа запроса в вызове ajax и контроллере маршрутов, но это не так.МетодNotAllowedHttpException: вызов метода POST с использованием Ajax Laravel

Используя Почтальон, я могу подтвердить, что почтовый маршрут работает нормально. Это оставляет мне возможность сосредоточиться на вызове AJAX.

Выпуск # 1

routes.php

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

custom.js

, а затем,

$('#teacher-save-submit').click(function(){ 

    var fname = $('#first_name').val(); 
    var lname = $('#last_name').val(); 
    var email = $('#email').val(); 
    var passkey = $('#passkey').val(); 

    $.ajax(function(){   
    type:"POST", 
    url:"/test", 
    dataType: "json", 
    success:function(data){ 
     console.log("success"); 
     $('#sbt-result').html(data); 
    } 
    }); 
}); 

#ISSUE # 2

В консоли, она показывает неперехваченного SyntaxError: Неожиданный маркер: на URL: "/ тест"

Было бы удивительным, если вы люди могут поделиться своим опытом.

Спасибо.

EDIT

Это то, что я имею в виду. Я думаю, что искать какие-то методы GET не Столбы error_produced

+0

Попробуйте отправить токен CSRF в данные в данных ajax ': {'_token': token},'. Где 'token = '{{csrf_token()}}'' –

ответ

0

Изменить

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

ЯШ:

url:"{{url('test')}}", 

и предотвратить событие по умолчанию щелчок

$('#teacher-save-submit').click(function(e){ 
    e.preventDefault(); 
    //ajax call 
+0

Спасибо за ваше время. Я пробовал, но не работал –

+0

какие ошибки вы получили? – madalinivascu

+0

Обычно я использую '{{action ('Controller @ method')}}', однако он по-прежнему работал в моем проекте, когда я указал URL-адрес, как и для моего конкретного запроса. –

0

Может быть, вы забыли поставьте метку «meta»:

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

Спасибо за ваше время. Я уже это сделал. –

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