2017-08-08 1 views
1

Ich versuche, einen Anruf zu einem Laravel Controller mit dieser Strecke zu machen:500, Fehler, Ajax Interner Serverfehler Laravel Controller

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

aber bekomme ich nur: 500 , error, Internal Server Error

$.ajax({   
    url: "obtenerNodos", 
    data: { id: '1' }, 
    method: 'post', 
    success: function() { 
     console.log("done"); 
     //do something 
    },error: function(xhr, ajaxOptions, thrownError){ 
     console.log(xhr.status+" ,"+" "+ajaxOptions+", "+thrownError); 
    } 

}); 

dies ist der Controller:

namespace App\Http\Controllers; 

use GuzzleHttp\Client; use Illuminate\Http\Request; 

class panelController extends Controller { 
    public function viewpanel(){ 
     return view('admin.panel'); 
    } 

    public function viewstats(){ 
     return view('admin.estadisticas'); 
    } 

    public function viewfacs(){ 
     $client = new Client();   
     $res = $client->get('http://smartbill.co:332/SmartBill2/rest/factura/get?codigo=FA001100x01&token=fd25834e78c7c4f806e9e56b307d16c18a847197'); 
     $respuesta = json_decode($res->getBody()->getContents(),true); 
     return view('admin.factura_add')->with('facturas', $respuesta); 
    } 

    public function viewfacsreg(){ 
     return view('admin.factura_reg'); 
    } 

    public function cerrarSesion(){ 
     //matar sesion antes de hacer la redirreccion 
     return view('welcome'); 
    } 

    public function obtenerNodos($id){ 
     $id = Input::get("id"); 
     return "done"; 
    } 
} 

Und dies ist der vollständige Fehler:

POST http://binario.com/obtenerNodos 500 (Internal Server Error) send @ jquery.min.js:6 ajax @ jquery.min.js:6 (anonymous) @ viewfacsreg:199

+0

können Sie teilen 'obtenerNodos()' Code aus Controller? – yoeunes

+0

auch können Sie den Stack-Trace Fehler – yoeunes

+0

@yoeunes teilen bereits die Post bearbeitet –

Antwort

1

halten Sie Ihre Route wie folgt aus:

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

Änderung Ihrer obtenerNodos() Funktion dazu:

public function obtenerNodos(Request $request){ 

    $id = $request->id; 

    return "done"; 
} 

und vergessen Sie nicht, diese an der Spitze zu importieren: use Illuminate\Http\Request;

Fügen Sie dieses JavaScript hinzu, das die Standardwerte für alle ajax-Anforderungen in jQuery festlegt. Vorzugsweise in einer js-Datei, die in Ihrem App enthalten ist:

$.ajaxSetup({ 
    headers: { 
     'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') 
    } 
}) 

stellen Sie sicher, einen Meta-Tag wie diese haben in der Blade-Seite:

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

bereits gemacht, dass Sie gesagt haben, aber jetzt bekomme ich diese Fehlermeldung: POST http://binario.com/obtenerNodos 404 senden (nicht gefunden) @ jquery.min.js: 6 ajax @ jquery.min.js: 6 (anonym) @ viewfacsreg: 199 –

+0

http://i943.photobucket.com/albums/ad274/Carlos_Jaramillo_Corrales/Sin%20ttulo_zpsncl3hake.png –

+0

@CarlosJaramilloCorrales Schau dir meine aktualisierte Antwort an, jetzt sollte es funktionieren – yoeunes

Verwandte Themen