Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

302
Visualizações
Expresar análisis de expresiones regulares de ruta estática múltiple

Estoy tratando de servir archivos estáticos de dos directorios usando express.

La razón por la que sirvo desde dos directorios se debe a las colisiones de nombres entre los archivos que se sirven en el directorio n.º 1 que tienen un nombre de directorio coincidente en el directorio n.º 2

En el directorio #1, contendrá solo archivos:

 /path/to/dir1/foo (where 'foo' is a file)

En el directorio #2, contendrá subdirectorios que contienen archivos:

 /path/to/dir2/foo/bar (where 'foo' is a dir && 'bar' is a file)

Mi objetivo es poder ejecutar los siguientes comandos:

 wget "http://myserver:9006/foo" wget "http://myserver:9006/foo/bar"

El siguiente fragmento de código logrará todo hasta el directorio n. ° 2 para mí:

 "use strict"; const express = require('express'); const app = express(); app.use('/', express.static('/path/to/dir1/')) const server = app.listen(9006, () => { let host = server.address().address; let port = server.address().port; console.log(`Example app listening at http://${host}:${port}`); });

Estoy tratando de agregar la segunda ruta estática con una expresión regular para ver si hay un '/' en la ruta para poder dirigirla al directorio #2. Estoy pensando algo en este sentido, pero no he tenido ningún éxito:

 app.use('/[^/]*([/].*)?', express.static('/path/to/dir2/'));

o

 app.use('/.*/.*', express.static('/path/to/dir2/'));

Apreciaría cualquier ayuda.

¡Gracias por adelantado!

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

De acuerdo con los documentos , puede llamar a express.static varias veces y buscará archivos en el orden en que especificó los directorios.

Estructura de carpetas:

 / static/ s1/ foo # Contents: s1/foo the file s2/ foo/ bar # Contents: s2/foo/bar the file.

La aplicación es su código exacto excepto por las dos líneas estáticas:

 const express = require('express') const app = express() app.use('/', express.static('static/s1')) app.use('/', express.static('static/s2')) const server = app.listen(9006, () => { let host = server.address().address let port = server.address().port console.log(`Example app listening at http://${host}:${port}`) })

Y las páginas funcionan como se esperaba.

 $ curl localhost:9006/foo s1/foo the file $ curl localhost:9006/foo/bar s2/foo/bar the file.
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda