March 30, 2024 express

Cara Cek Content Type Request Di Express

Untuk mengecek header Content-Type apakah sesuai pada request express, gunakan method is pada request objek diikuti Content-Type yang akan dicek.

app.post('/', (req, res) => {
    return res.send(req.is('application/json'))
})

Hasilnya.

curl -X POST http://localhost:3000 \
	-H "Content-Type: application/json" \
	-d '{}'

# application/json

Jika content type tidak sesuai maka req.is akan mengembalikan false.

curl -X POST http://localhost:3000 \
	-H "Content-Type: text/html" \
	-d '{}'

# false

Jika body tidak dikirimkan pada request maka akan mengembalikan null meskipun content type-nya sesuai.

curl -X POST http://localhost:3000 \
	-H "Content-Type: application/json"

# null

Express menggunakan package https://github.com/jshttp/type-is, untuk dokumentasi lebih lengkap bisa dilihat disana.

Sumber