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

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

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

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

परिचय: Kotlin और REST API क्यों?

\n

आधुनिक वेब डेवलपमेंट REST API के बिना अकल्पनीय है। यदि आप पहले से ही Python और Flask या FastAPI जैसे फ्रेमवर्क से परिचित हैं, तो आप निश्चित रूप से सर्वर एप्लिकेशन बनाने की सरलता और गति की सराहना करते हैं। Kotlin, JVM के लिए एक आधुनिक भाषा के रूप में, विशेष रूप से Ktor फ्रेमवर्क के साथ, समान लालित्य और संक्षिप्तता प्रदान करता है।

\n

इस लेख में हम 30 मिनट में Kotlin पर एक पूर्ण REST API बनाएंगे। आप प्रोजेक्ट सेट अप करना, रूट बनाना, JSON को संसाधित करना और सर्वर चलाना सीखेंगे। कोई बेकार बात नहीं - केवल अभ्यास।

\n

यदि आप अपने टेक्नोलॉजी स्टैक का विस्तार करना चाहते हैं या बैकएंड डेवलपमेंट के लिए Kotlin आज़माना चाहते हैं, तो यह गाइड आपके लिए है।

\n\n

चरण 1: प्रोजेक्ट और निर्भरताएँ सेट करना

\n

शुरू करने के लिए हमें Kotlin पर एक प्रोजेक्ट चाहिए। हम Gradle बिल्डर (या आपकी पसंद के अनुसार Maven) का उपयोग करेंगे। सबसे तेज़ तरीका Ktor Project Generator के माध्यम से प्रोजेक्ट बनाना है।

\n

निम्नलिखित विकल्प चुनें:

\n
    \n
  • Build System: Gradle Kotlin DSL
  • \n
  • Engine: Netty (या कोई अन्य)
  • \n
  • Plugins: Content Negotiation (JSON), Routing, Status Pages
  • \n
\n

आर्काइव डाउनलोड करने के बाद इसे अनज़िप करें और IntelliJ IDEA या किसी अन्य एडिटर में खोलें।

\n

यदि आप मैन्युअल रूप से प्रोजेक्ट बना रहे हैं, तो build.gradle.kts में निम्नलिखित निर्भरताएँ जोड़ें:

\n
dependencies {\n    implementation("io.ktor:ktor-server-core:2.3.0")\n    implementation("io.ktor:ktor-server-netty:2.3.0")\n    implementation("io.ktor:ktor-server-content-negotiation:2.3.0")\n    implementation("io.ktor:ktor-serialization-kotlinx-json:2.3.0")\n    implementation("ch.qos.logback:logback-classic:1.4.11")\n}
\n

अब Application.kt फ़ाइल बनाएं - एप्लिकेशन का प्रवेश बिंदु।

\n
import io.ktor.server.engine.*\nimport io.ktor.server.netty.*\nimport io.ktor.server.application.*\nimport io.ktor.server.plugins.contentnegotiation.*\nimport io.ktor.serialization.kotlinx.json.*\nimport kotlinx.serialization.json.Json\n\nfun main() {\n    embeddedServer(Netty, port = 8080, host = "0.0.0.0") {\n        configureSerialization()\n        configureRouting()\n    }.start(wait = true)\n}\n\nfun Application.configureSerialization() {\n    install(ContentNegotiation) {\n        json(Json {\n            prettyPrint = true\n            isLenient = true\n        })\n    }\n}
\n

हो गया! हमारे पास JSON के साथ काम करने के लिए बुनियादी सेटअप और पोर्ट 8080 पर एक सर्वर है।

\n\n

चरण 2: डेटा मॉडल और स्टोरेज बनाना

\n

REST API के लिए हमें डेटा चाहिए। आइए एक सरल User मॉडल और एक अस्थायी in-memory स्टोरेज बनाएं।

\n

पहले @Serializable एनोटेशन के साथ एक data-क्लास परिभाषित करें:

\n
import kotlinx.serialization.Serializable\n\n@Serializable\ndata class User(\n    val id: Int,\n    val name: String,\n    val email: String\n)
\n

अब एक रिपॉजिटरी ऑब्जेक्ट बनाएं जो उपयोगकर्ताओं को स्टोर करेगा:

\n
object UserRepository {\n    private val users = mutableListOf(\n        User(1, "इवान इवानोव", "ivan@example.com"),\n        User(2, "मारिया पेट्रोवा", "maria@example.com")\n    )\n\n    fun getAll(): List<User> = users.toList()\n\n    fun getById(id: Int): User? = users.find { it.id == id }\n\n    fun add(user: User): User {\n        users.add(user)\n        return user\n    }\n\n    fun delete(id: Int): Boolean = users.removeIf { it.id == id }\n}
\n

यह सबसे सरल समाधान है, लेकिन 30 मिनट के प्रदर्शन के लिए यह आदर्श है।

\n\n

चरण 3: रूट (REST endpoints) कॉन्फ़िगर करना

\n

अब सबसे दिलचस्प भाग - CRUD ऑपरेशन के लिए एंडपॉइंट बनाएं। Routing.kt फ़ाइल जोड़ें:

\n
import io.ktor.server.routing.*\nimport io.ktor.server.response.*\nimport io.ktor.server.request.*\n\nfun Application.configureRouting() {\n    routing {\n        route("/api/u                

ब्लॉग

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