Skip to content

Next.js, blank page after calling `res.redirect()`

I had an API route and after responding to a form submit, the API called

res.redirect('/')

It worked great locally in development, but when I shipped it to Vercel, the redirect ended up to a blank page. The URL was correct, but it took a refresh to show the content.

Not sure why, but I fixed this by using res.writeHead() instead:

res.writeHead(302, { Location: '/' }).end()

The 302 Found HTTP code is a common way of performing URL redirection.


→ Get my Next.js (pages router) Handbook

→ I wrote 17 books to help you become a better developer:

  • C Handbook
  • Command Line Handbook
  • CSS Handbook
  • Express Handbook
  • Git Cheat Sheet
  • Go Handbook
  • HTML Handbook
  • JS Handbook
  • Laravel Handbook
  • Next.js Handbook
  • Node.js Handbook
  • PHP Handbook
  • Python Handbook
  • React Handbook
  • SQL Handbook
  • Svelte Handbook
  • Swift Handbook
...download them all now!

Also, JOIN MY CODING BOOTCAMP, an amazing cohort course that will be a huge step up in your coding career - covering React, Next.js - next edition February 2025

Bootcamp 2025

Join the waiting list