2014-08-29 2 views
1

Я новичок в node.js/express.js, и я читаю некоторые уроки. Я запутался, потому что я привык к простой логике apache, логика node.js/express.js меня смущает. Пожалуйста, помогите мне.где и как обслуживать файлы из, в node.js

This В учебнике используются экспресс-маршруты по умолчанию для добавления/получения данных из базы данных. Но, в попрошайничество, в части имени! «. ЧАСТЬ 2 - OK, FINE, LET'S DO "HELLO, WORLD" редактирует файл ...\ROUTES\INDEX.JS добавить только простой HTML-страницы Почему это

  1. Может? Я просто использовать папку public служить мои файлы и получить доступ к, используя тот же URL?

  2. Если у меня есть, как 50 файлов, я должен добавить 50 аналогичные функции в моей ...\ROUTES\INDEX.JS, так что я могу служить им? Даже самый простой статические файлы?

  3. Могу ли я просто поместить все мои файлы в папку public и t Куда отредактируйте app.js и ...\ROUTES\INDEX.JS?

Также я читал первую главу книги Jump Start Node.js Дона Нгуен. Он не редактирует маршруты, просто добавляет методы в app.js и реализует новые модули (называемые db и user) для добавления пользователей в db. Это также добавляет новую функцию get к app.js для простого файла form.html.

  1. Опять же, почему я могу использовать папку public, а затем редактировать app.js и создавать свои собственные модули?

  2. Опять же, если у меня есть 50 файлов, я должен добавить 50 похожих функций в мой app.js, чтобы я мог их обслуживать? Даже самые простые статические файлы?

    Наконец,

  3. В чем разница между этими двумя методами? В каком случае я их использую?

  4. Какая из лучших?

Большое спасибо

+0

http://blog.modulus.io/nodejs-and-express-static-content –

+0

@FelixKling Спасибо, обслуживающие файлы из 'public' works.Я спросил, могу ли я служить из 'public' и все еще использовать app.js или маршруты, как это делают вышеприведенные учебники. – slevin

ответ

0

Служить папку с именем «общественности» как статические файлы:

app.use(express.static(__dirname + '/public')); 

Причина учебник не ставил их «простой» индексной страницы в public, что их «простая» страница не статична. Они передают данные { title: 'Express' } на динамическую страницу.

Если название «Экспресс» всегда будет статичным, то да, вы можете подать его от public. Однако, ради руководства, мы предполагаем, что они могут динамически изменять заголовок из «Экспресс» на что-то еще.

+0

Спасибо, я знаю, эта строка по умолчанию используется в моих файлах 'app.js' и обслуживании из' public'. Я спросил, могу ли я служить из 'public' и все еще использовать' app.js' или маршруты, как это делают вышеприведенные учебники. – slevin

+0

Отредактировал свой ответ. –

+0

OK спасибо. Так как же мои другие вопросы? Нужно ли добавлять метод в 'app.js' (или' index.js') для каждого динамического файла? И каковы различия между методами в учебниках выше? благодаря – slevin

Смежные вопросы