30 मिनट में TypeScript पर REST API कैसे लिखें

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

30 मिनट में TypeScript पर REST API कैसे लिखें: चरण-दर-चरण मार्गदर्शिका



REST API बनाना किसी भी backend-डेवलपर के लिए एक बुनियादी कार्य है। TypeScript का उपयोग सख्त टाइपिंग जोड़ता है, कोड की पठनीयता में सुधार करता है और त्रुटियों की संख्या कम करता है। इस लेख में, हम सीखेंगे कि केवल 30 मिनट में TypeScript पर एक पूर्ण REST API कैसे लिखें। आप Express, TypeORM और कोड संगठन की सर्वोत्तम प्रथाओं से परिचित होंगे।



1. प्रोजेक्ट सेटअप और डिपेंडेंसी इंस्टॉलेशन



सबसे पहले एक नई डायरेक्टरी बनाएं और Node.js प्रोजेक्ट को इनिशियलाइज़ करें:



mkdir my-rest-apicd my-rest-apinpm init -y


आवश्यक पैकेज इंस्टॉल करें:



npm install express reflect-metadata typeorm sqlite3npm install -D typescript @types/node @types/express ts-node nodemon


TypeScript कॉन्फ़िगरेशन के लिए tsconfig.json फ़ाइल बनाएं:



{  "compilerOptions": {    "target": "ES2020",    "module": "commonjs",    "outDir": "./dist",    "rootDir": "./src",    "strict": true,    "esModuleInterop": true,    "experimentalDecorators": true,    "emitDecoratorMetadata": true,    "skipLibCheck": true  },  "include": ["src/**/*"]}


2. बेसिक स्ट्रक्चर और एंट्री पॉइंट बनाना



फ़ोल्डर संरचना इस प्रकार व्यवस्थित करें:



  • src/ — मुख्य कोड
  • src/controllers/ — कंट्रोलर
  • src/entities/ — डेटाबेस एंटिटीज़
  • src/routes/ — रूट्स


एप्लिकेशन का एंट्री पॉइंट src/index.ts फ़ाइल बनाएं:



import "reflect-metadata";import express from "express";import { AppDataSource } from "./data-source";import { userRoutes } from "./routes/userRoutes";

const app = express();const PORT = process.env.PORT || 3000;

app.use(express.json());

AppDataSource.initialize() .then(() => { console.log("Database connected"); app.use("/api/users", userRoutes); app.listen(PORT, () => { console.log(`Server running on http://localhost:${PORT}`); }); }) .catch((error) => console.log(error));


अब TypeORM कॉन्फ़िगरेशन के लिए src/data-source.ts बनाएं:



import { DataSource } from "typeorm";import { User } from "./entities/User";

export const AppDataSource = new DataSource({ type: "sqlite", database: "database.sqlite", synchronize: true, logging: false, entities: [User],});


3. एंटिटी और कंट्रोलर परिभाषित करना



यूज़र मॉडल के लिए src/entities/User.ts फ़ाइल बनाएं:



import { Entity, PrimaryGeneratedColumn, Column } from "typeorm";

@Entity()export class User { @PrimaryGeneratedColumn() id!: number;

@Column() name!: string;

@Column() email!: string;

@Column({ default: true }) isActive!: boolean;}


अब कंट्रोलर src/controllers/userController.ts बनाएं:



import { Request, Response } from "express";import { AppDataSource } from "../data-source";import { User } from "../entities/User";

const userRepository = AppDataSource.getRepository(User);

export const getUsers = async (req: Request, res: Response) => { try { const users = await userRepository.find(); res.json(users); } catch (error) { res.status(500).json({ message: "Error fetching users" }); }};

export const getUserById = async (req: Request, res: Response) => { try { const user = await userRepository.findOneBy({ id: parseInt(req.params.id) }); if (!user) { return res.status(404).json({ message: "User not found" }); } res.json(user); } catch (error) { res.status(500).json({ message: "Error fetching user" }); }};

export const createUser = async (req: Request, res: Respo

ब्लॉग

पुस्तक अनुशंसाएँ