2016-04-05 12 views
3

Ist es möglich, so etwas mit Knoten und Express-Middleware zu tun?Node Express ändern statischen Ordner auf Benutzerbasis

Was ich versuche zu erreichen, ermöglicht Benutzern, ihre eigenen "öffentlichen" Verzeichnisse zu haben, um statische Dateien zu liefern. die Verzeichnisstruktur wäre etwas wie/user/< Hash>

+0

Sie können einen Ordner basierend auf Benutzernamen oder ID erstellen, je nachdem, was einzigartig ist, und basierend auf diesem Wert Aufruf 'express.static()' Methode – CodingDefined

Antwort

1

Denken Sie, ich habe eine Lösung für Sie!

app.get('/:user', function(req, res, next) { 
    app.use('/', express.static(path.join(__dirname, 'public/' + req.params.user))); 
    res.send(''); 
}); 

Um zu erklären, stellen die beiden Dateien auf den Pfaden:

/__dirname/public/user1/userdata.text

/__dirname/public/user2/userdata.text

die beiden folgenden URLs Durch den Besuch:

http://localhost:3000/user1/userdata.txt

http://localhost:3000/user2/userdata.txt

Sie würden diese zwei verschiedenen Dateien jeweils anfordern. Wenn die Datei nicht existiert, wirft sie eine 404 wie Sie erwarten würden!

Hoffe, das hilft.

+1

@squirreldev Stellen Sie sicher, es ist, und dann daran denken, die Antwort zu akzeptieren :) –

Verwandte Themen