express-cargo sınıf tabanlı request parsing
(github.com/Beyond-Imagination)express-cargo, TypeScript tabanlı dekoratör yaklaşımıyla tekrarlayan istek verisi işlemlerini düzenli bir şekilde toparlayan bir middleware'dir. req.body, req.query, req.params değerlerini doğrudan ele almak yerine sınıf tanımı ve middleware çağrısıyla gerekli işlemleri yapabilirsiniz.
Kurulum
npm install express-cargo reflect-metadata
Başlıca özellikler
@body,@query,@param,@header,@sessiondekoratör desteği- Tek bir sınıfta body, query, header gibi çeşitli istek bilgilerini aynı anda işleyebilme
- Sınıf alanı tiplerine göre request değerlerini otomatik tip dönüştürme
@equal,@range,@lengthgibi validation dekoratörleriyle doğrulama@transformile değer dönüştürme@virtualile diğer alan değerlerini referans alarak değer atama
Örnek kod
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
})
İlgili bağlantılar
- github : https://github.com/Beyond-Imagination/express-cargo
- npm : https://www.npmjs.com/package/express-cargo
- docs : https://beyond-imagination.github.io/express-cargo
Geri bildirimlerinizi her zaman memnuniyetle karşılarım. Bol bol deneyip görüşlerinizi paylaşırsanız sevinirim.
Henüz yorum yok.