Saya telah mengurangi kode saya ke aplikasi express-js paling sederhana yang dapat saya buat:
var express = require("express"),
app = express.createServer();
app.use(express.static(__dirname + '/styles'));
app.listen(3001);
Direktori saya terlihat seperti ini:
static_file.js
/styles
default.css
Namun ketika saya mengakses http://localhost:3001/styles/default.css
saya mendapatkan kesalahan berikut:
Cannot GET / styles /
default.css
Saya menggunakan express 2.3.3
dan node 0.4.7
. Apa yang saya lakukan salah?
Jawaban:
Coba
http://localhost:3001/default.css
.Untuk memiliki
/styles
URL permintaan Anda, gunakan:Lihatlah contoh-contoh di halaman ini :
sumber
path.join
untuk mengatasi masalah pemisah direktori lintas platform. path.join (__ dirname, '/')Saya memiliki masalah yang sama. Saya telah menyelesaikan masalah dengan kode berikut:
Contoh permintaan statis:
Saya butuh solusi yang lebih sederhana. Apakah itu ada
sumber
default.css
harus tersedia dihttp://localhost:3001/default.css
The
styles
dalamapp.use(express.static(__dirname + '/styles'));
hanya memberitahu mengungkapkan untuk melihat distyles
direktori untuk file statis untuk melayani. Itu tidak (membingungkan) kemudian membentuk bagian dari jalan yang tersedia.sumber
/public
yang memilikicss
,js
,img
folder sehingga Anda dapathttp://localhost:3001/css/default.css
:)Ini bekerja untuk saya:
sumber
Di server.js Anda:
Anda telah menyatakan express dan aplikasi secara terpisah, membuat folder bernama 'publik' atau sesuka Anda, namun Anda dapat mengakses folder ini. Di template src Anda, Anda telah menambahkan jalur relatif dari / publik (atau nama folder Anda ke file statis). Waspadalah terhadap bar di rute.
sumber
Apa yang berhasil untuk saya adalah:
Alih-alih menulis
app.use(express.static(__dirname + 'public/images'));
di app.js AndaCukup tulis
app.use(express.static('public/images'));
yaitu menghapus nama direktori root di path. Dan kemudian Anda dapat menggunakan jalur statis secara efektif di file js lainnya, Misalnya:
Semoga ini membantu :)
sumber
Saya menggunakan Bootstrap CSS, JS dan Font di aplikasi saya. Saya membuat folder bernama
asset
direktori root aplikasi dan meletakkan semua folder ini di dalamnya. Kemudian dalam file server ditambahkan baris berikut:Baris ini memungkinkan saya untuk memuat file-file yang berada di
asset
direktori dari/asset
awalan jalan seperti:http://localhost:3000/asset/css/bootstrap.min.css
.Sekarang dalam pandangan saya cukup memasukkan CSS dan JS seperti di bawah ini:
sumber
untuk menyajikan file statis (file css, gambar, file js) hanya dua langkah:
meneruskan direktori file css ke middleware express.static
untuk mengakses file atau gambar css cukup ketik url http: // localhost: port / filename.css mis: http: // localhost: 8081 / bootstrap.css
catatan: untuk menautkan file css ke html ketikkan saja
<link href="file_name.css" rel="stylesheet">
jika saya menulis kode ini
untuk mengakses file statis cukup ketik url: localhost: port / css / filename.css mis: http: // localhost: 8081 / css / bootstrap.css
catatan untuk menautkan file css dengan html cukup tambahkan baris berikut
sumber
ini bekerja untuk saya
sumber
Coba akses dengan http: // localhost: 3001 / default.css .
Anda benar-benar memberinya nama folder yaitu gaya bukan pinggiran kota Anda.
sumber
Saya menemukan file css saya dan menambahkan rute ke sana:
Maka tampaknya berhasil.
sumber
.use()
danexpress.static()
metode untuk mengirim ke mana Anda melayani file Anda. Kalau tidak, Anda akan memiliki salah satu router ini per file di direktori publik Anda dan itu banyak overhead untuk dipelihara.Selain di atas, pastikan path file statis dimulai dengan / (ex ... / assets / css) ... untuk menyajikan file statis di direktori mana pun di atas direktori utama (/ main)
sumber
jika pengaturan Anda
lalu,
masukkan app.js
dan lihat style.css Anda: (dalam beberapa file .pug):
sumber
folder proyek Nodejs .
Menggunakan
app.use( express.static('public'));
dan di
index.html
jalur yang benar dari skrip ke<script type="text/javascript" src="/javasrc/example.js"></script>
Dan sekarang semuanya bekerja dengan baik.
sumber
direktori statis
periksa gambar di atas (direktori statis) untuk struktur dir
sumber