Sai che stai inviando index.html per ogni richiesta?
Cambia questo:
router.get('*', function(request, response) {
response.sendfile('./public/index.html');
});
A questo:
app.use(express.static(path.join(__dirname, 'public')));
O questo:
app.use('/path', express.static(path.join(__dirname, 'public')));
se sei andato a servire i file statici in un percorso diverso da /
.
Assicurati di aggiungere questo all'inizio del tuo file:
var path = require('path');
Assicurati anche di avere effettivamente il public
directory nella posizione corretta e che includa index.html
e altri file richiesti.
Ovviamente potresti avere altri problemi poiché ovviamente non hai incluso l'intero codice.
Guarda il mio esempio su GitHub se vuoi servire file statici con Express:
- https://github.com/rsp/node-express-static-example
È un esempio funzionante che puoi scaricare, inserire il tuo contenuto statico nella directory corretta e personalizzarlo in base alle tue esigenze.
Altri esempi per fare lo stesso con e senza Express:
- https://github.com/rsp/node-static-http-servers
Altre risposte correlate:
- Come pubblicare un'immagine utilizzando nodejs
- Impossibile caricare la risorsa dalla stessa directory durante il reindirizzamento di Javascript
- caricare la chiamata js che non funziona con il nodo
- Invio dell'intero contenuto della cartella al cliente con express
- Il nodo JS non serve l'immagine statica