Request
Request
Запрос, полученный сервером, который передаётся как первый аргумент middleware-функций.
Свойства
req.incomingMessage
Тип: readonly http.IncomingMessage
Исходный http.IncomingMessage. Может быть использован для доступа к низкоуровневому API Node.js модуля http
.
req.originalUrl
Тип: readonly string
Исходный URL запросы.
Пример:
'http://localhost:8000/api/comments?page=1&limit=10'
req.query
Тип: readonly Record<string, string | string[] | undefined>
Параметры поиска запроса, конвертированные в объект.
Пример:
{ page: '1', limit: '10' }
req.body
Тип: string | Record<string, any> | undefined
Тело запроса. undefined
по умолчанию. Чтобы распарсить req.body
, используйте middleware-функции bodyParser и formParser. Если тело запроса имеет тип text/plain
, req.body
это строка, иначе - Record<string, any>
.
Пример:
{ firstname: 'John', lastname: 'Doe', email: '[email protected]', password: '123456' }
req.cookies
Тип: Record<string, string> | undefined
Куки запроса. undefined
по умолчанию. Чтобы распарсить req.cookies
, используйте middleware-функцию bodyParser.
Пример:
{ exceeded: 'true' }
req.files
Тип: Record<string, UploadedFile[]> | undefined
Файлы, отправленные через форму. undefined
по умолчанию. Чтобы распарсить req.files
, используйте middleware-функцию formParser
.
req.headers
Заголовки запроса.
req.method
Тип: HttpMethod
Метод запроса.
req.params
Тип: Record<string, string | string[]>
Параметры запроса, полученные из пути запроса (см. Роутинг).
req.path
Тип: string
Путь запроса в текущем роутере:
import { LunaticServer, Router } from '@shelepuginivan/lunatic'
const app = new LunaticServer()
const router = new Router()
router.get('/some-path', (req, res) => {
console.log(req.path) // '/some-path'
res.status(204).end()
})
app.use('/router', router)
app.get('/app', (req, res) => {
console.log(req.path) // '/app'
res.status(204).end()
})
app.get('/longer/path/', (req, res) => {
console.log(req.path) // '/longer/path/'
res.status(204).end()
})
req.protocol
Тип: 'http' | 'https'
Протокол запроса.
Сигнатура
Request
может быть расширен другими свойствами. Сигнатура: { [name: string]: unknown }