Socket.io-Namespaces und Server teilen keine Middleware?

9

Ich habe eine Pass-Authentifizierungs-Middleware für meine socket.io/express App erstellt. Es sieht so aus:

%Vor%

Es funktioniert gut, aber ich habe einen Namensraum und es scheint einen anderen Sockel verwendet. Bedeutet das, dass ich meine Middleware für jeden Namespace wiederverwenden muss?

Ich habe bemerkt, dass ich mit meinem Namespace verbunden bin, er ruft die Middleware für den Basisserver und dann den Namespace an, das heißt, wenn ich die Middleware an beiden Stellen einschließe, mache ich 2x die Operationen, die ich brauche. Kann ich das verhindern, ohne die Middleware auf der Basisschicht zu entfernen? Keine davon sind App-Breaker, aber es wird meine Architektur ein bisschen verändern und ich bin besorgt, dass ich irgendwann Auth-Lücken haben werde.

Zusammenfassung:

  • Muss ich meine Middleware für jeden Namespace wiederverwenden?
  • Kann ich verhindern, dass die standardmäßige Namespace-Middleware aufgerufen wird, ohne die Middleware auf der Basisschicht zu entfernen, wenn ein Namespace mit?
  • verbunden ist?
Chris Anderson-MSFT 11.01.2015, 06:55
quelle

0 Antworten