Next.js Tutorial
Selected Reading
- Next.js - Discussion
- Next.js - Useful Resources
- Next.js - Quick Guide
- Next.js - CLI
- Next.js - Deployment
- Next.js - Environment Variables
- Next.js - Typescript
- Next.js - Response Helpers
- Next.js - API MiddleWares
- Next.js - API Routes
- Next.js - Shallow Routing
- Next.js - Imperitive Routing
- Next.js - Dynanic API Routes
- Next.js - Routing
- Next.js - Pre-Rendering
- Next.js - Global CSS Support
- Next.js - CSS Support
- Next.js - Meta Data
- Next.js - Static File Serving
- Next.js - Pages
- Next.js - Environment Setup
- Next.js - Overview
- Next.js - Home
Selected Reading
- Who is Who
- Computer Glossary
- HR Interview Questions
- Effective Resume Writing
- Questions and Answers
- UPSC IAS Exams Notes
Next.js - API Routes
Next.js - Api Routes
API Routes is a way to create rest API using Next.js. Next.js maps any file present in /pages/api folder and will be treated as API end point. An example of API function −
export default (req, res) => { ... }
Following are some important points to consider.
req − req is an instance of http.IncomingMessage and is used to get data from request.
res − res is an instance of http.ServerResponse and is used to send data as response.
Let s create an example to demonstrate the same.
In this example, we are going to create an user.js in pages/api directory.
Let s update the nextjs project used in
chapter.Create user.js file in pages/api directory as following.
export default (req, res) => { res.statusCode = 200 res.setHeader( Content-Type , apppcation/json ) res.end(JSON.stringify({ name: Robert })) }
Start Next.js Server
Run the following command to start the server −.
npm run dev > nextjs@1.0.0 dev D:Node extjs > next ready - started server on http://localhost:3000 info - Loaded env from D:Node extjs.env.local event - compiled successfully event - build page: /api/user wait - compipng... event - compiled successfully event - build page: /next/dist/pages/_error wait - compipng... event - compiled successfully
Verify Output
Open localhost:3000/api/user in a browser and you will see the following output.
{"name":"Robert"}Advertisements