Send a response using Express
How to send a response back to the client using Express
In the Hello World example we used the Response.send()
method to send a simple string as a response, and to close the connection:
(req, res) => res.send('Hello World!')
If you pass in a string, it sets the Content-Type
header to text/html
.
if you pass in an object or an array, it sets the application/json
Content-Type
header, and parses that parameter into JSON.
send()
automatically sets the Content-Length
HTTP response header.
send()
also automatically closes the connection.
Use end() to send an empty response
An alternative way to send the response, without any body, itβs by using the Response.end()
method:
res.end()
Set the HTTP response status
Use the Response.status()
:
res.status(404).end()
or
res.status(404).send('File not found')
sendStatus()
is a shortcut:
res.sendStatus(200)
// === res.status(200).send('OK')
res.sendStatus(403)
// === res.status(403).send('Forbidden')
res.sendStatus(404)
// === res.status(404).send('Not Found')
res.sendStatus(500)
// === res.status(500).send('Internal Server Error')
β Get my Express.js Handbook
I wrote 21 books to help you become a better developer:
- HTML Handbook
- Next.js Pages Router Handbook
- Alpine.js Handbook
- HTMX Handbook
- TypeScript Handbook
- React Handbook
- SQL Handbook
- Git Cheat Sheet
- Laravel Handbook
- Express Handbook
- Swift Handbook
- Go Handbook
- PHP Handbook
- Python Handbook
- Linux Commands Handbook
- C Handbook
- JavaScript Handbook
- Svelte Handbook
- CSS Handbook
- Node.js Handbook
- Vue Handbook