Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

NextJS - ReferenceError: Request is not defined | Reading old version of Node

When I run npm run dev in my nextjs project I get the following error:

.../node_modules/next/dist/server/web/spec-extension/request.js:28
class NextRequest extends Request {
                          ^

ReferenceError: Request is not defined
    at Object.<anonymous> (.../node_modules/next/dist/server/web/spec-extension/request.js:28:27)
    at Module._compile (node:internal/modules/cjs/loader:1097:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1149:10)
    at Module.load (node:internal/modules/cjs/loader:975:32)
    at Function.Module._load (node:internal/modules/cjs/loader:822:12)
    at Module.require (node:internal/modules/cjs/loader:999:19)
    at Module.mod.require (.../node_modules/next/dist/server/require-hook.js:64:28)
    at require (node:internal/modules/cjs/helpers:102:18)
    at Object.<anonymous> (.../node_modules/next/dist/server/web/spec-extension/adapters/next-request.js:37:18)
    at Module._compile (node:internal/modules/cjs/loader:1097:14)

Node.js v17.4.0

When I run node -v I get:

v20.9.0

I have already uninstalled node from my machine and reinstalled it using nvm.

From what I understood nextjs and the packages I have installed are complaining because I am not using the required node version. However since in my terminal when I run node -v I get that I am using v20.9 I'm not sure why else Nextjs isn't detecting the correct node version

Anyone know how I can solve this?

like image 707
Lucas Slepetys Avatar asked May 06 '26 16:05

Lucas Slepetys


2 Answers

Open terminal inside your project and then run below mentioned command

npm i node@lts

like image 129
drdzp Avatar answered May 08 '26 07:05

drdzp


I got this issue when using a node version below 18 which is actually required by nextJs 13. If you are not using node version manager, I suggest you install it you can find details about how to install it here

Then run nvm install 18 this will install and set your current version to 18. Then just run yarn dev or npm run dev to start your development server.

like image 28
Mpwanyi Samuel Avatar answered May 08 '26 07:05

Mpwanyi Samuel