2016-04-06 8 views
0

Wir verwenden eine Lumen/Dingo-Implementierung basierend auf dem folgenden Repo lumen-dingo. Wir bauen dies auf einem bestehenden Rahmen auf und das bringt einige kleinere Probleme mit sich.Verwendung von Lumen + Dingo + JWT ohne Lumen/Laravel Sitzung

Unser Framework verwendet sein eigenes Session-Objekt, das ganze in der Anwendung, es ist keine Option, dies zu ändern. Was wir im Idealfall wollen, ist das Lumen + Dingo + JWT Setup so zu ändern, dass es unsere Session nutzt.

Ich weiß nicht, was das Beste ist hier zu tun. Ich kann mir drei mögliche Lösungen vorstellen:

  1. Erstellen Sie einen benutzerdefinierten Sitzungstreiber in Lumen, der unsere Framework-Sitzung initiieren wird.
  2. ignorieren Sie einfach die Lumen Sitzung
  3. Verwenden Sie die Lumen-Sitzung neben der normalen Sitzung, so dass sie beide zur gleichen Zeit aktiv sind, aber ich weiß nicht, ob dies funktioniert.

    /* 
    |-------------------------------------------------------------------------- 
    | Authentication Guards 
    |-------------------------------------------------------------------------- 
    | 
    | Next, you may define every authentication guard for your application. 
    | Of course, a great default configuration has been defined for you 
    | here which uses session storage and the Eloquent user provider. 
    | 
    | All authentication drivers have a user provider. This defines how the 
    | users are actually retrieved out of your database or other storage 
    | mechanisms used by this application to persist your user's data. 
    | 
    | Supported: "session" 
    | 
    | NOTE: "token" driver is not supported in JWT Auth 
    | 
    */ 
    
    'guards' => [ 
        'api' => [ 
         'driver' => 'session', 
         'provider' => 'users' 
        ], 
    ], 
    

ich diese Details zu bearbeiten ich versucht, aber ich erhalte in Fehler ausgeführt wird. Ich weiß nicht, ob ich etwas falsch mache oder vielleicht sogar völlig falsch liege.

Antwort

0

Warum verwenden Sie Sitzungen mit Lumen?

Lumen wird nur zum Erstellen von APIs verwendet und sollte daher staatenlos sein!

Mit Lumen 5.2 haben sie die Unterstützung für Sitzungen vollständig entfernt.

Lumen 5.2 stellt eine Verschiebung auf abnehmen Lumen dar, um sich ausschließlich auf das Servieren zustandsloser JSON-APIs zu konzentrieren. Daher sind Sitzungen und Ansichten nicht mehr im Framework enthalten.

+0

Hmm interessant. Nun das Repo, wo ich mein Projekt auf Lasten im normalen Session-Objekt basiere. Wird es kein Problem geben, wenn ich das wieder entferne. Beachten Sie auch, dass ich mit der JWT-Komponente und dort muss ich eine Wache liefern, und der Fahrer ist Sitzung. –