Reduje mi código a la aplicación express-js más simple que pude hacer:
var express = require("express"),
app = express.createServer();
app.use(express.static(__dirname + '/styles'));
app.listen(3001);
Mi directorio se ve así:
static_file.js
/styles
default.css
Sin embargo, cuando accedo http://localhost:3001/styles/default.css
me sale el siguiente error:
Cannot GET / styles /
default.css
Estoy usando express 2.3.3
y node 0.4.7
. ¿Qué estoy haciendo mal?
Respuestas:
Tratar
http://localhost:3001/default.css
.Para tener
/styles
en su URL de solicitud, use:Mira los ejemplos en esta página :
fuente
path.join
para superar los problemas de separador de directorio multiplataforma. path.join (__ dirname, '/')Tengo el mismo problema. He resuelto el problema con el siguiente código:
Ejemplo de solicitud estática:
Necesito una solución más simple. ¿Existe?
fuente
default.css
debería estar disponible enhttp://localhost:3001/default.css
El
styles
deapp.use(express.static(__dirname + '/styles'));
simplemente expresar dice que buscar en elstyles
directorio para un archivo estático para servir. No lo hace (confusamente) entonces forma parte de la ruta en la que está disponible.fuente
/public
la que tienecss
,js
,img
carpetas para que puedahttp://localhost:3001/css/default.css
:)Este trabajo para mi:
fuente
En su server.js:
Has declarado express y app por separado, crea una carpeta llamada 'public' o como quieras, y aún así puedes acceder a esta carpeta. En su plantilla src, ha agregado la ruta relativa desde / public (o el nombre del destino de su carpeta a los archivos estáticos). Cuidado con los bares en las rutas.
fuente
Lo que funcionó para mí es:
En lugar de escribir
app.use(express.static(__dirname + 'public/images'));
en tu app.jsSimplemente escribe
app.use(express.static('public/images'));
es decir, elimine el nombre del directorio raíz en la ruta. Y luego puede usar la ruta estática de manera efectiva en otros archivos js, por ejemplo:
Espero que esto ayude :)
fuente
Estoy usando Bootstrap CSS, JS y Fonts en mi aplicación. Creé una carpeta llamada
asset
en el directorio raíz de la aplicación y coloco todas estas carpetas dentro de ella. Luego, en el archivo del servidor, agregue la siguiente línea:Esta línea me permite cargar los archivos que están en el
asset
directorio desde el/asset
prefijo de ruta como:http://localhost:3000/asset/css/bootstrap.min.css
.Ahora en las vistas simplemente puedo incluir CSS y JS como a continuación:
fuente
para servir archivos estáticos (css, imágenes, archivos js) solo dos pasos:
pasar el directorio de archivos css a middleware express.static integrado
para acceder a archivos css o imágenes simplemente escriba url http: // localhost: port / filename.css ex: http: // localhost: 8081 / bootstrap.css
nota: para vincular archivos CSS a HTML simplemente escriba
<link href="file_name.css" rel="stylesheet">
si escribo este código
para acceder a los archivos estáticos simplemente escriba url: localhost: port / css / filename.css ej: http: // localhost: 8081 / css / bootstrap.css
Nota para vincular archivos CSS con HTML simplemente agregue la siguiente línea
fuente
este me funcionó
fuente
Intente acceder con http: // localhost: 3001 / default.css .
En realidad, le está dando el nombre de carpeta, es decir, estilos, no su suburl.
fuente
Encuentro mi archivo css y le agrego una ruta:
Entonces parece funcionar.
fuente
.use()
yexpress.static()
métodos para enviar donde está sirviendo sus archivos. De lo contrario, tendrá uno de estos enrutadores por archivo en su directorio público y eso es una gran carga para mantener.Además de lo anterior, asegúrese de que la ruta del archivo estático comience con / (ex ... / assets / css) ... para servir archivos estáticos en cualquier directorio sobre el directorio principal (/ main)
fuente
si su configuración
luego,
ingrese app.js
y consulte su style.css: (en algún archivo .pug):
fuente
carpeta del .
Utilizar
app.use( express.static('public'));
y en
index.html
la ruta correcta de scripts para<script type="text/javascript" src="/javasrc/example.js"></script>
Y ahora todas las cosas funcionan bien.
fuente
directorio estático
verifique la imagen anterior (directorio estático) para ver la estructura de directorios
fuente