Create New Post

Node Js - JSON API

What is a JSON API?

A JSON API is a type of web API (Application Programming Interface) that uses JSON (JavaScript Object Notation) as the format for sending and receiving data between a client (like a web app or mobile app) and a server.

How It Works:
 

  • The client makes an HTTP request (like GET, POST, PUT, DELETE)

  • The server responds with data in JSON format

Why JSON?

  • Lightweight and fast

  • Easy to read and write

  • Works well with JavaScript

Commonly Used In:

  • REST APIs

  • Frontend-backend communication

  • Mobile apps (iOS/Android)

  • Microservices

Use Cases:

Action Method Endpoint Description
Get all users GET /api/users Fetch user list
Get single user     GET /api/users/1 Fetch user with ID = 1
Add user POST          /api/users Add a new user
Update user PUT /api/users/1          Update user with ID = 1
Delete user DELETE /api/users/1 Delete user with ID = 1

 

Example :

const express = require('express');
const mysql = require('mysql2');

const app = express();

const connection = require('./db');

app.use(express.json());

// Fetch users

app.get('/api/users', (req, res) => {

    connection.query("SELECT * FROM users", (err, results) => {

        if (err) return res.status(500).send(err);

        res.json(results);

    });

});

app.get('/api/users/:id', (req, res) => {

    const user_id= req.params.id;

    connection.query("SELECT * FROM users where id= ?",[user_id], (err, results) => {

        if (err) return res.status(500).send(err);

        res.json(results);

    });

  });
//DELETE user

 app.delete('/api/users/:id', (req, res) => {

    const user_id= req.params.id;

    connection.query("delete FROM users where id= ?",[user_id], (err, results) => {

        if (err) return res.status(500).send(err);

        res.json({ message: 'User deleted' });

    });

  });

// Update user

  app.put('/api/users/:id', (req, res) => {

    const user_id= req.params.id;

    connection.query("update users set name=? where id= ?",[req.body.name,user_id], (err, results) => {

        if (err) return res.status(500).send(err);

        res.json({ message: 'User updated' });

    });

  });

// Insert user

app.post('/users', (req, res) => {

    const { name, email } = req.body;

    connection.query("INSERT INTO users (name, email) VALUES (?, ?)", [name, email], (err, result) => {

        if (err) return res.status(500).send(err);

        res.json({ message: "User added", id: result.insertId });

    });

});

app.listen(3000, () => console.log("Server running on port 3000"));

Request : 

GET /api/users

Response:

[

    {

        id: 3,

        name: "Smith Doe",

        email: "[email protected]"

    },

    {

        id: 4,

        name: "smith doe",

        email: "[email protected]"

    },

    {

        id: 5,

        name: "roberts joy",

        email: "[email protected]"

    },

    {

        id: 6,

        name: "rose donaldo",

        email: "[email protected]"

    }

]

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *

20569