2017-01-23 1 views
1

Ich möchte Formular mit Ajax mit Laravel senden. Aber die Ajax-Post-Methode gibt 405-Methode jetzt erlaubt. Ich benutze eine ruhige Route. Mein Code ist unten angegeben:
Meine Route Datei ist unten angegeben:Laravel Restful Route Ajax Methode Post 405 Methode nicht erlaubt

Route::resource("a","AController"); 

Meine js Datei ist unten angegeben:

var host = "http://example.com/"; 
var url = host + "a/store"; 
$('#form_id').on('submit',function(e){ 
    e.preventDefault(); 
    var data = $(this).serialize(); 
    $.ajax({ 
    url:url, 
    data: data, 
    type: 'post', 
    dataType: 'json', 
    timeout: 1000, 
    error:function() { alert("Error Submitting Information") } 
    }).done(function(resp){ 

    }); 
}); 

Meine Controller-Datei:

public function store(Request $request){ 
    $input = $request->all(); 
} 

Aber es gibt 405 Methode nicht erlaubt Fehler

+0

Teile deine 'web. PHP Code bitte. Haben Sie die Route als Post registriert? – manniL

+0

Sind Sie sicher, dass der Endpunkt eine POST-Anfrage unterstützt, und nicht ein GET/PUT/DELETE? –

+0

Ich habe meine Frage mit routes/web.php Datei @manniL – Vam

Antwort

1

Entfernen Sie die /store Teil:

var host = "http://example.com/"; 
var url = host + "a/"; //<---- 
$('#form_id').on('submit',function(e){ 
    e.preventDefault(); 
    var data = $(this).serialize(); 
    $.ajax({ 
    url:url, 
    data: data, 
    type: 'post', 
    dataType: 'json', 
    timeout: 1000, 
    error:function() { alert("Error Submitting Information") } 
    }).done(function(resp){ 

    }); 
}); 

standardmäßig Laravel jede POST-Anforderung an store Funktion direkt in AController

Werfen Sie einen Blick auf Routen-Tabelle in Laravel docs: https://laravel.com/docs/5.3/controllers#resource-controllers

Verwandte Themen