Хотите улучшить этот вопрос? Переформулируйте вопрос так, чтобы на него можно было дать ответ, основанный на фактах и цитатах.
Закрыт 3 года назад.
Я занимался фронт-эндом и в бэк не лез, теперь когда решил изучить нод понял, что не могу найти ни одного толкового урока, где скажут как написать, к примеру, свой блог и прикрепить к нему верстку, есть только куча уроков как делать авторизацию со стороны нода и т.п. Так же есть уроки которые снимались пару лет назад и зная как js развивается, не хотелось бы учить по ним, буду благодарен за толковые статьи и видео уроки.
....Пишу в ответ, т.к. не хватает репутации для комментирования.... У меня была подобная ситуация с Nodejs: когда смотришь курс, читаешь книги, и кажется, что стоишь на месте - дальше "Hello world" дело не идет. Но потом, когда количество переросло в качество - я понял, что для создания сервера у меня уже есть все необходимые знания. Их нужно было только собрать в кучу.
Принцип прост:
1) Браузер делает запрос (просит html, css, js, картинку);
2) Этот запрос надо обработать (понять что хочет браузер);
3) Дать ему ответ.
И это все. Авторизация, работа с БД - это уровень чуть выше. Я сейчас только двигаюсь к нему). Вот пример кода сервера, который подойдет для статического сайта:
var http = require("http");
var fs = require("fs");
var url = require("url");
var path = require("path");
// создаем объект для удобной работы с MIME-type файлов
var mimeType = {
".js": "text/javascript",
".css": "text/css",
".jpg": "image/jpeg",
".bmp": "image/bmp",
".png": "image/png",
".json": "application/json",
".ico": "image/x-icon",
".html":"text/html"
};
var port = 3000;
var server = http.createServer();
server.listen(port, function(){
console.log("Сервер работает по адресу localhost:"+port);
})
//каждый запрос сервера генерирует событие "request", обрабатываем его и даем ответ. Все в одном
server.on("request", function(req, res){
//в запросе содержится URL, который мы разбиваем на части
var urlParse = url.parse(req.url);
//при первом запросе на localhost путь будет пустой
if (urlParse.pathname == "/") {
urlParse.pathname = "/index.html";
};
// для установления правильного MIME-type определяем расширение файла
var extname = path.extname(urlParse.pathname);
//формируем правильный путь к файлу для чтения (path.join), читаем файл и отправляем его браузеру.
fs.readFile(path.join(__dirname, urlParse.pathname), function(err, data){
if (err) throw err;
res.writeHead(200, {"Content-Type": mimeType[extname]});
res.end(data);
});
});
https://coursehunters.net/course/itvdn-nodejs - вот крутой видеокурс по Nodejs
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Нужно сохранить переменные var AI_temp_A3_new_OUTGraph и var airflowM2Graph вне функции
Не работает переключатель городов на лендингеПодскажите пожалуйста что исправить в коде
Пробую сделать делегирование таким способомСтавлю один обработчик событий на весь код
В данный момент я пытаюсь сделать сайдбар, который не прокроливается, и при этом прилипает к верхней границе экрана, когда сама страница проскролливается...