Zredukowałem swój kod do najprostszej aplikacji express-js, jaką mogłem zrobić:
var express = require("express"),
app = express.createServer();
app.use(express.static(__dirname + '/styles'));
app.listen(3001);
Mój katalog wygląda następująco:
static_file.js
/styles
default.css
Jednak po uzyskaniu dostępu pojawia http://localhost:3001/styles/default.css
się następujący błąd:
Cannot GET / styles /
default.css
Używam express 2.3.3
i node 0.4.7
. Co ja robię źle?
Odpowiedzi:
Spróbować
http://localhost:3001/default.css
.Aby mieć
/styles
adres URL żądania, użyj:Spójrz na przykłady na tej stronie :
źródło
path.join
do przezwyciężenia problemów związanych z separatorem katalogów między platformami. path.join (__ dirname, '/')Mam ten sam problem. Rozwiązałem problem z następującym kodem:
Przykład żądania statycznego:
Potrzebuję prostszego rozwiązania. Czy to istnieje?
źródło
default.css
powinien być dostępny pod adresemhttp://localhost:3001/default.css
In
styles
poapp.use(express.static(__dirname + '/styles'));
prostu mówi ekspresowi, aby szukał wstyles
katalogu statycznego pliku do obsłużenia. Nie tworzy (myląco) części ścieżki, na której jest dostępny.źródło
/public
który macss
,js
,img
foldery, dzięki czemu możnahttp://localhost:3001/css/default.css
:)Ta praca dla mnie:
źródło
W twojej server.js:
Zadeklarowałeś osobno ekspres i aplikację osobno, utwórz folder o nazwie „publiczny” lub jak chcesz, a mimo to możesz uzyskać do niego dostęp. W szablonie src dodano ścieżkę względną z / public (lub nazwę przeznaczenia folderu do plików statycznych). Uważaj na paski na trasach.
źródło
Dla mnie zadziałało:
Zamiast pisać
app.use(express.static(__dirname + 'public/images'));
w pliku app.jsPo prostu napisz
app.use(express.static('public/images'));
tzn. usuń nazwę katalogu głównego ze ścieżki. Następnie możesz efektywnie wykorzystać ścieżkę statyczną w innych plikach js, na przykład:
Mam nadzieję że to pomoże :)
źródło
Używam Bootstrap CSS, JS i czcionek w mojej aplikacji. Utworzyłem folder o nazwie
asset
w katalogu głównym aplikacji i umieściłem w nim wszystkie te foldery. Następnie w pliku serwera dodano następujący wiersz:Linia ta pozwala mi załadować pliki znajdujące się w
asset
katalogu z/asset
przedrostkiem ścieżki jak:http://localhost:3000/asset/css/bootstrap.min.css
.Teraz w widokach mogę po prostu dołączyć CSS i JS jak poniżej:
źródło
do obsługi plików statycznych (css, obrazy, pliki js) wystarczy dwa kroki:
przekazać katalog plików css do wbudowanego oprogramowania pośredniego express.static
aby uzyskać dostęp do plików lub obrazów css, po prostu wpisz adres URL http: // localhost: port / filename.css np: http: // localhost: 8081 / bootstrap.css
Uwaga: aby połączyć pliki CSS z HTML, po prostu wpisz
<link href="file_name.css" rel="stylesheet">
jeśli napiszę ten kod
aby uzyskać dostęp do plików statycznych, wpisz adres URL: localhost: port / css / filename.css np: http: // localhost: 8081 / css / bootstrap.css
Uwaga, aby połączyć pliki css z HTML, wystarczy dodać następujący wiersz
źródło
ten działał dla mnie
źródło
Spróbuj uzyskać do niego dostęp za pomocą http: // localhost: 3001 / default.css .
W rzeczywistości nadajesz mu nazwę folderu, tzn. Style, a nie suburl.
źródło
Znajduję mój plik css i dodam do niego trasę:
To wydaje się działać.
źródło
.use()
iexpress.static()
metod do wysyłania tam, gdzie podajesz swoje pliki. W przeciwnym razie będziesz mieć jeden z tych routerów na plik w swoim katalogu publicznym i to będzie dużo narzutów do utrzymania.Oprócz powyższego upewnij się, że ścieżka do pliku statycznego zaczyna się od / (ex ... / resources / css) ... aby obsługiwać pliki statyczne w dowolnym katalogu powyżej katalogu głównego (/ main)
źródło
jeśli twoja konfiguracja
następnie
wstaw app.js
i odwołaj się do swojego style.css: (w pliku .pug):
źródło
folderze .
Posługiwać się
app.use( express.static('public'));
i we
index.html
właściwej ścieżce skryptów do<script type="text/javascript" src="/javasrc/example.js"></script>
A teraz wszystko działa dobrze.
źródło
katalog statyczny
sprawdź powyższy obraz (katalog statyczny) pod kątem struktury katalogu
źródło