Sto iniziando a sperimentare con nodejs/expressjs/coffeescript e il motore di visualizzazione jade.Perché non riesco ad accedere ai miei file javascript da Expressjs/Nodejs?
Ho il seguente setup che da quello che vedo dagli esempi che ci sono in giro sembra piuttosto standard.
app = express.createServer().listen process.env.PORT
app.configure ->
app.set 'views', __dirname + '/views'
app.set 'view engine', 'jade'
app.set 'view options', layout: true
app.use express.bodyParser()
app.use express.static(__dirname + '/public')
app.use app.router
app.get '/ekmHoliCal/index', (req, res) ->
res.render 'index'
La mia struttura di directory è la seguente:
-- ekmHoliCal
-- public
--javascripts
client.js
-- views
index.jade
layout.jade
Il file di indice contiene altro che la linea: Questo è il file di indice
il file layout.jade contiene:
!!! 5
html(lang="en")
head
title Users
script(type="text/javascript", src="http://code.jquery.com/jquery-1.6.4.js")
script(type="text/javascript", src="/ekmholical/javascripts/client.js")
body
div!= body
Quando navigo su localhost/ekmHoliCal/index mi viene servita la pagina indice come previsto. Tuttavia, se ho vista origine vedo un link verso a jquery:
<script type="text/javascript" src="http://code.jquery.com/jquery-1.6.4.js">
e se clicco su quel link abbastanza sicuro vedo l'origine del file di jQuery.
La fonte file indice contiene anche un link al mio file Client.js come segue:
<script type="text/javascript" src="/ekmholical/javascripts/simon.js"></script>
ma quando clicco su che ricevo
non possono ottenere/ekmholical/javascript/cliente. js
ho visto questa domanda relativa (Express-js can't GET my static files, why?) e non può vedere quello che sto facendo male
Grazie Paolo. Avevo già provato il tuo suggerimento senza successo. Detto questo, la tua risposta è corretta. Quello che ho negato di menzionare è che sto eseguendo questo su Windows sotto IIS e sembra essere la mia configurazione del sito sotto IIS che stava causando il problema. –