express-cargo
Deklarative, decorator-gesteuerte Anfragedatenverarbeitung für Express.js.
import express from 'express'
import { Body, bindingCargo, getCargo, Min, Header, Params } from 'express-cargo'
const app = express()
app.use(express.json())
class RequestExample {
@Body()
name!: string
@Body()
@Min(0)
age!: number
@Params('id')
id!: number
@Header()
authorization!: string
}
app.post('/:id', bindingCargo(RequestExample), (req, res) => {
const data = getCargo<RequestExample>(req)
// write your code with bound data
})
app.listen(3000)
Deklarative Datenbindung
Binden Sie Anfragedaten (Body, Query, Params) einfach mit intuitiven Decorators an Klasseninstanzen, um eine saubere und kohärente Routing-Logik zu erstellen.
Robuste Datenvalidierung
Überprüfen Sie die Datenvalidität einfach mit verschiedenen integrierten Decorators und stellen Sie die Integrität sicher, bevor Sie Daten verarbeiten.
Typsicherheit und Erweiterbarkeit
Entwickelt auf TypeScript-Basis für vollständige Typsicherheit und frei erweiterbar durch benutzerdefinierte Decorators und Transformer.