Автор оригинала: Shahid Shaikh.
Вступление:
Expressjs – одна из самых популярных и широко используемых веб-структур в зоне развития Node.js. Expressjs позволяет вам очень легко обрабатывать маршруты, серверы и материалы ввода/вывода.
ExpressJS обеспечивает плавный переход для наследий веб-сайтов для использования Node.js в качестве среднего слоя. Итак, если у вас есть веб-сайт на Apache или Nginx, то без особых изменений в исходном коде вы можете преобразовать их в веб-сайт Super Fast ExpressJS.
Настройка проекта:
Мы собираемся разработать веб-сайт с помощью Bootstrap и Expressjs. Express будет работать в качестве обработчика веб-сервера и маршрутизации, тогда как мы будем использовать Bootstrap и Basic HTML для вида.
Структура каталогов:
-- lib -- views + -- index.html + -- about.html + -- contact.html + -- 404.html -- node_modules + -- express package.json
Package.json.
{ "name" : "website-using-express", "version" : "0.0.1", "scripts" : { "start" : "node Server.js" }, "dependencies" : { "express" : "latest" } }
Переключитесь на папку проекта и введите
npm install
Это установит зависимость, которую мы требуем, что выражается. Тег « Scripts » позволит вам начать свой входной скрипт, который является Server.js Отказ
Server.js:
var express = require("express"); var app = express(); var router = express.Router(); var path = __dirname + '/views/'; router.use(function (req,res,next) { console.log("/" + req.method); next(); }); router.get("/",function(req,res){ res.sendFile(path + "index.html"); }); router.get("/about",function(req,res){ res.sendFile(path + "about.html"); }); router.get("/contact",function(req,res){ res.sendFile(path + "contact.html"); }); app.use("/",router); app.use("*",function(req,res){ res.sendFile(path + "404.html"); }); app.listen(3000,function(){ console.log("Live at Port 3000"); });
Для первых 3 строк мы загружаем зависимость (Express). Мы используем Экспресс маршрутизатор ()
, который представляет собой встроенный и мощный сервис маршрутизации среднего слоя, предоставленный ExpressJS.
Мы сохранили представления (I.E HTML-файлы) в папке «Представления». Мы присваиваем этот путь, используя ключевое слово «__dirname», который указывает на ваш текущий рабочий каталог.
На линии нет. 5, мы определили средний слой маршрутизатора, который будет выполнен перед любыми другими маршрутами. Этот маршрут будет использоваться для печати типа HTTP-запроса. Особый маршрут имеет в виду.
router.use(function (req,res,next) { console.log("/" + req.method); next(); });
Как только средний слой определен, вы должны пройти « Next ()
», чтобы следующий роутер будет выполняться.
Функция « SendFile ()
» – это встроенная функция в ExpressJS и предназначена для отправки файлов в веб-браузер. В нашем случае мы отправляем HTML-файл.
Линия
app.use("/",router);
Это говорит выразить, чтобы использовать маршруты, которые мы определены выше.
Магия экспресс-маршрутизации мы можем назначить маршруты по порядку, поэтому последний будет выполняться, когда входящий запрос не соответствует никакой маршруту. Ну для нас, это 404 случай.
app.use("*",function(req,res){ res.sendFile(path + "404.html"); });
Взгляды:
index.html:
Single page web app using Angularjs
This is place to put content. You can put slider, short description about your website and place some links for navigation.
Вот как это выглядит:
О.html.html.
Put detail description about you and your company.
Contact.Html:
Как запустить код:
Откройте свой терминал и переключитесь в папку и введите Project
npm start
Вы должны увидеть экран, похожий на это:
Посетите localhost: 3000 и просмотрите свой первый сайт.
Заключение:
Мы узнали, как настроить Express для обработки рендеринга и маршрутизатора. Мы можем использовать ту же методику для выполнения перехода от устаревшего на сайт.