2016-09-07 7 views
0

Ich habe eine Laravel 5 App. In der App ist Login-Funktionalität mit angularjs entwickelt (Anfrage E-Mail/Passwort mit $ http()). Jetzt gibt es eine andere .net App. Ich möchte .net Benutzer auf Anfrage (durch Senden von E-Mail/Passwort mit jquery Ajax), um in mein System eingeloggt zu lassen. Antwort wird JSON sein. Wenn die Antwort Erfolg hat, leitet das .net App-System die Seite in die Laravel 5 App um. Ich habe angefordert, um sich mit $ .ajax() einzuloggen. Aber Problem ist, dass Laravel 5 TokenMismatchException Fehler wirft. Also muss ich pass csrf token. Aber ich weiß nicht, , wie ich csrf Token in Ajax Anfrage von .net App zu Laravel 5 App übergeben kann. Wenn jemand die Lösung kennt, wird es geschätzt. Und auch wenn es einen alternativen Standardansatz für .net zu Laravel 5 Login gibt, wird es auch geschätzt.

Laravel 5 - Winkel Login

$http({ 
    method: 'POST', 
    url: LOGIN_CONTROLLER_URL, 
    data: { 
     st_email: '[email protected]', 
     st_password: 'dowhateveryouwanttodo' 
     } 
    }); 

JQuery Ajax Login

$.ajax({ 
    method: 'POST', 
    url: LOGIN_CONTROLLER_URL, 
    data: { 
     st_email: '[email protected]', 
     st_password: 'dowhateveryouwanttodo' 
     } 
    }); 
+0

Ich denke, die [Dokumentation] (https://laravel.com/docs/5.3/csrf#csrf-x-csrf-token) die Informationen, die Sie brauchen . –

+0

@CerlinBoss, Ja, Laravel hat eine Dokumentation dazu. Aber ich möchte dies auf .net App implementieren. Also '' ist keine Option für mich. weil 'csrf-token()' Laravel-Funktion ist. Gibt es eine alternative Funktion in .net? –

+0

Sie sind berechtigt, Laravel-Code zu bearbeiten? –

Antwort

1

kann ich Ihnen vorschlagen, die JWT (JSON Web Token). CSRF-Token schützt Sie nur vor Angriffen. Zur Anmeldung verwenden Sie JWT. Es gibt viele Pakete/Pakete im Web, die Sie in Ihrem Projekt verwenden können. Für Laravel einer der besten ist:

JSON Web Token Authentication for Laravel & Lumen

+0

Ein Nachteil von JWT ist, dass Sie ein Token nicht von der Serverseite ungültig machen können. Das Maximum, das Sie tun können, ist Blacklisting. –