Файлдарды жуктоо жана статикалык файлдарды таратуу
Колдонуучуларга серверге файл жонотууго мумкунчулук бериниз, файлдарды эстутумду ашыкча жуктобостон кайра берип бериниз
- ресурстар папкасын
express.staticаркылуу таратуу, multipart/form-dataдеген эмне жана эмне учунexpress.json()аны окуй албай турганын тушундуруу,- жеке жана коптогон жуктоолорду multer аркылуу кабыл алуу (дискте жана эстутумда сактоо),
- файлдарды
res.sendFile,res.downloadжана агым аркылуу кайра жонотуу.
1. express.static аркылуу статиканы таратуу
Статикалык файл — сервер озгортпостон кайра берүүчу файл: сурот, CSS, шрифт, жуктоп алуучу PDF. Алардын ар бирине очунчо маршрут жазуунун кереги жок. Express'те express.static деген камтылган middleware бар, ал дисктеги папканы URL даректерине автоматтык турдо байланыштырат.
const express = require('express');
const path = require('path');
const app = express();
// Serve every file inside ./public at the site root
app.use(express.static(path.join(__dirname, 'public')));
app.listen(3000);
Эми public/logo.png файлы озунуздун маршрутунуз жок эле http://localhost:3000/logo.png дареги боюнча жеткиликтуу. Express ошондой эле туура Content-Type коёт, кэштоо аталыштарын колдойт жана HTTP range-суроолоруна жооп берет.
Коп учурда ресурстарды API маршруттары менен кагылышпашы учун URL префикс астына чыгарган ынгайлуу. Монтаж жолун биринчи аргумент катары бериниз:
// Mount the same folder under a URL prefix
app.use('/static', express.static('public'));
// public/logo.png -> http://localhost:3000/static/logo.png
// public/css/app.css -> http://localhost:3000/static/css/app.css
express.static дегенди эч качан долбоордун тамырына багыттабаныз — антпесе баштапкы кодунузду жана node_modules папкасын таратып жибересиз.