Page 335 - Браун Э. - Изучаем JavaScript. Руководство по созданию современных веб-сайтов - 2017
P. 335
НТТР-сервера. Например, если у вас есть файл favicon . ico, улучшающий внешний
вид вашего веб-сайта, вы можете выделить этот запрос и отправить содержимое дан -
ного файла непосредственно клиенту.
const server = http . createServer ( f unction ( r eq, res ) {
i f ( r e q . m ethod === ' G ET ' && req. url === ' / favico . i c ' )
n
o
const fs = require ( ' f ' ) ;
s
o
fs . createReadStream ( ' favicon . i c ' ) ;
fs . pipe ( r e s ) ; / / это вместо вызова метода ' e n d '
e l s e {
console . l o ( ' $ { r e q . m ethod} $ { r eq . u r } ' ) ;
l
g
res . end ( ' H ello world ! ' ) ;
} ) ;
Выше приведен минимально возможный, хотя и не очень интересный, веб-сервер.
Анализируя информацию, содержащуюся в объекте IncomingRequest, вы можете рас
ширить приведенную выше модель и создать любой вид веб-сайта по своему желанию.
Если вы планируете использовать Node для обслуживания веб-сайта, то вам, ве
роятно, понадобится изучить использование таких каркасов, как Express или Коа, ко
торые возьмут на себя часть работы по построению веб-сервера с нуля.
Коа - это преемник весьма популярного каркаса Express, и это не
случайно: оба написаны Ти Джей Головайчуком. Если вы уже знако
мы с Express, то и с Коа вы почувствуете себя как дома, за исключени
ем только того, что в нем применяется подход к веб-разработке, более
ориентированный на ЕSб.
Заключе н и е
Здесь ы поверхностно затронули самые важные моменты интерфейса API Node.
м
Мы сосредоточились на тех пакетах, которые вы, вероятно, увидите почти в каждом
приложении (таких, как fs, Buffer, process и stream). Однако существует и множе
ство других пакетов, которые вы должны будете изучить самостоятельно. Официаль
/
ная док у ментация (ht tps : / /nodej . org / en/ docs ) - очень подробна, но для но
s
вичка может быть сложной. Если вас интересует разработка приложений для Node,
рекомендую начать с книги Шелли Пауэрса (Shelley Powers) Learning Node.
338 Глава 20. Платформа Node

