express-cargo parsing request berbasis class
(github.com/Beyond-Imagination)express-cargo adalah middleware berbasis TypeScript dengan pendekatan dekorator yang merapikan penanganan data request yang berulang dengan lebih bersih. Anda bisa melakukan pekerjaan yang diperlukan lewat deklarasi class dan pemanggilan middleware tanpa harus menangani req.body, req.query, dan req.params secara langsung.
Cara instalasi
npm install express-cargo reflect-metadata
Fitur utama
- Mendukung dekorator
@body,@query,@param,@header,@session - Dalam satu class, berbagai informasi request seperti body, query, dan header bisa diproses sekaligus
- Nilai request otomatis dikonversi sesuai tipe field pada class
- Validasi dengan dekorator seperti
@equal,@range,@length - Transformasi nilai menggunakan
@transform - Menetapkan nilai dengan merujuk ke field lain menggunakan
@virtual
Contoh kode
class RequestExample {
@body()
name!: string
@body()
@min(0)
age!: number
@params()
id!: number
@header()
authorization!: string
}
app.post('/:id', bindingCargo(RequestExample), (req, res) => {
const data = getCargo<RequestExample>(req)
// write your code with bound data
})
Tautan terkait
- github : https://github.com/Beyond-Imagination/express-cargo
- npm : https://www.npmjs.com/package/express-cargo
- docs : https://beyond-imagination.github.io/express-cargo
Umpan balik selalu kami sambut. Silakan banyak mencobanya dan bagikan pendapat Anda
Belum ada komentar.