insocks
Back to blog. Article language: BN EN ES FR HI ID PT RU UR VI ZH

Curl POST Request Guide: डेटा भेजने का तरीका और उपयोग

Curl POST अनुरोध एक सार्वभौमिक कमांड-लाइन उपयोगिता है जो HTTP, HTTPS और FTP सहित विभिन्न नेटवर्क प्रोटोकॉल पर निर्बाध डेटा ट्रांसफर के लिए उपयोग की जाती है। यह प्रोग्राम कमांड लाइन से HTTP अनुरोध भेजने के लिए मानक विकल्प बन गया है। यह क्रॉस-प्लेटफ़ॉर्म उपयोगिता HTTP, HTTPS, FTP और IMAP प्रोटोकॉल का समर्थन करती है, जिससे API को अनुरोध भेजना और वेबसाइटों से जानकारी एकत्र करना आसान हो जाता है। व्यापक रूप से उपलब्ध और POST Curl प्रोटोकॉल का समर्थन करने वाला, इसे कमांड लाइन से सीधे API परीक्षण करने के लिए एक वैध विधि माना जाता है, चाहे वह निजी हो या सार्वजनिक सेवाएं। यह सामग्री संयुक्त राज्य अमेरिका के डेवलपर्स, DevOps इंजीनियरों और QA विशेषज्ञों के लिए है।

HTTP POST विधि को समझना

Post Curl का तात्पर्य किसी सर्वर पर डेटा भेजने के लिए HTTP POST विधि के उपयोग से है। यह सबसे सामान्य HTTP विधियों में से एक है। GET अनुरोधों के विपरीत, जो URL में डेटा शामिल करते हैं, Curl POST अनुरोध डेटा को अनुरोध निकाय (request body) में प्रसारित करता है। इस विधि का उपयोग गुप्त डेटा ट्रांसफर करने और ब्राउज़र द्वारा GET अनुरोधों पर लगाए गए URL लंबाई प्रतिबंधों से बचने के लिए किया जा सकता है।

इन विधियों का उपयोग curl फ़ॉर्म डेटा सबमिशन, फ़ाइल अपलोड और API में JSON डेटा ट्रांसफर करने के लिए किया जाता है। चूंकि जानकारी अनुरोध निकाय में होती है, इसलिए यह URL या ब्राउज़र इतिहास में दिखाई नहीं देती है और आमतौर पर GET अनुरोधों के विपरीत, वेब ब्राउज़र द्वारा कैश नहीं की जाती है।

GET अनुरोधों और Curl POST (बॉडी के साथ) के बीच के अंतर को निम्नलिखित तालिका में अधिक विस्तार से प्रस्तुत किया गया है:

तुलना मानदंडGET अनुरोधPOST अनुरोध
डेटा स्थानURL मेंcurl POST बॉडी में
सामान्य उपयोगखोजना, फ़िल्टर करना और लेख पढ़ना, जहाँ डेटा बदलना नहीं चाहिएप्राधिकरण (Authorization), पंजीकरण, भुगतान, सामग्री बनाना या संपादित करना
IdempotencyIdempotent - एकाधिक अनुरोध स्थिति नहीं बदलते हैंनहीं
सुरक्षा विचारकम सुरक्षित क्योंकि डेटा दिखाई देता हैअधिक सुरक्षित क्योंकि डेटा छिपा हुआ है

GET अनुरोध URL की लंबाई से सीमित होते हैं, जबकि POST अनुरोध नहीं।

Curl POST अनुरोध कैसे भेजता है

Curl POST अनुरोध आपको कमांड लाइन से सीधे HTTP अनुरोध भेजने की अनुमति देता है। ऐसे अनुरोध सर्वर पर डेटा स्थानांतरित करते हैं। Curl अनुरोध में Curl POST बॉडी में कई पैरामीटर हो सकते हैं। सबसे सरल रूप इस प्रकार दिखता है: curl -X POST https://example.com/api, जहाँ:

curl - प्रोग्राम लॉन्च करता है;

-X - HTTP विधि के रूप में POST निर्दिष्ट करता है; https://example.com/api - वह URL जिस पर अनुरोध भेजा जाता है। इस Curl POST उदाहरण में कोई डेटा नहीं है, इसलिए अनुरोध बॉडी आमतौर पर जोड़ी जाती है। इस प्रकार, curl HTTP संचार पर विस्तृत नियंत्रण प्रदान करता है, जो इसे API डिबगिंग और इंफ्रास्ट्रक्चर परीक्षण के लिए अपरिहार्य बनाता है।

विभिन्न प्रकार के POST डेटा भेजना

curl में POST अनुरोधों में विभिन्न प्रकार का डेटा भेजा जाता है। Curl POST बॉडी और हेडर प्रारूप भेजे जा रहे डेटा के प्रकार को निर्धारित करते हैं। मुख्य विवरण नीचे दिए गए हैं।

फ़ॉर्म-एनकोडेड डेटा भेजना

application/x-www-form-urlencoded प्रारूप HTTP पर POST अनुरोधों में फ़ॉर्म डेटा संचरण के लिए मानक विधि है। ऐसे अनुरोध HTML फ़ॉर्म और curl उपयोगिता का उपयोग करते हैं।

डेटा को & प्रतीक द्वारा अलग किए गए key=value जोड़ों के रूप में प्रसारित किया जाता है। एक Curl POST उदाहरण इस तरह दिखता है: name=Michael&age=32&city=Chicago, जहाँ नाम Michael है, आयु 32 है, और शहर Chicago है।

JSON पेलोड भेजना

JSON क्लाइंट और सर्वर के बीच डेटा का आदान-प्रदान करने के लिए सबसे लोकप्रिय प्रारूपों में से एक है। POST Curl के माध्यम से JSON भेजते समय, सही HTTP हेडर निर्दिष्ट करना महत्वपूर्ण है: Content-Type: application/json। Content-Type हेडर का उपयोग करते समय, सुनिश्चित करें कि यह सही और सटीक है, क्योंकि यह सर्वर को बताता है कि Curl POST अनुरोध निकाय किस प्रारूप में एनकोड किया गया है।

तुलना के लिए, यहाँ एक तालिका है:

डेटा का प्रकारहेडर आवश्यकसामान्य उपयोग का मामला
application/x-www-form-urlencodedस्वचालित रूप सेHTML फॉर्म
multipart/form-dataPOST के माध्यम से फ़ाइल अपलोड द्वारा स्वचालित रूप सेफ़ाइल अपलोड
application/jsonमैन्युअल रूप से निर्दिष्ट किया जाना चाहिएREST API
application/XMLआवश्यकपुराने APIs और SOAP

JSON में कुंजियों के चारों ओर सही सिंटैक्स और उद्धरण चिह्नों के उपयोग की आवश्यकता होती है।

POST के साथ फ़ाइलें अपलोड करना

POST Curl के माध्यम से फ़ाइल अपलोड उस HTML फॉर्म का उपयोग करके किया जाता है जिसमें enctype="multipart/form-data" एट्रिब्यूट होता है। यह विधि टेक्स्ट और बाइनरी डेटा को प्रसंस्करण के लिए सर्वर पर भेजने की अनुमति देती है। इस विधि की मुख्य विशेषताओं में शामिल हैं:

  • HTML फॉर्म। इसमें सटीक फ़ाइल ट्रांसफर सुनिश्चित करने के लिए "multipart/form-data" मान के साथ enctype एट्रिब्यूट शामिल होना चाहिए।
  • सर्वर प्रोसेसिंग। प्राप्त करने वाली स्क्रिप्ट एक विशेष सरणी (array) के माध्यम से फ़ाइल प्राप्त करती है जिसमें फ़ाइल का नाम, प्रकार, अस्थायी स्थान और आकार होता है।
  • सुरक्षा। प्रारंभिक सत्यापन के लिए फ़ाइल चयन फ़ील्ड से पहले एक छिपा हुआ MAX_FILE_SIZE फ़ील्ड सेट किया जाना चाहिए, हालांकि यह सर्वर-साइड सत्यापन की जगह नहीं लेता है।

फ़ाइलें या तो पूरी तरह से या भागों में स्थानांतरित की जाती हैं।

हेडर और प्रमाणीकरण (Authentication) के साथ काम करना

Curl POST अनुरोध प्रमाणीकरण पैरामीटर्स और मेटाडेटा को HTTP हेडर में और पेलोड को अनुरोध निकाय में स्थानांतरित करता है। हेडर और प्रमाणीकरण के साथ काम करने के कई प्रमुख पहलू हैं:

  • प्राधिकरण (Authorization)। अक्सर एक्सेस टोकन स्थानांतरित करने के लिए उपयोग किया जाता है: Authorization: Bearer
  • Content-Type हेडर। JSON डेटा भेजते समय आवश्यक है।
  • अन्य महत्वपूर्ण हेडर। Accept (अपेक्षित प्रतिक्रिया प्रकार) और User-Agent (क्लाइंट जानकारी)।
  • Postman में प्रमाणीकरण। Authorization टैब में, Bearer Token का चयन करें ताकि Postman स्वचालित रूप से हेडर उत्पन्न कर सके।
  • सुरक्षा। टोकन-आधारित प्रमाणीकरण अनुरोध हमेशा HTTPS पर भेजे जाने चाहिए।

इसलिए, HTTPS का उपयोग किया जाना चाहिए, टोकन सुरक्षित रूप से संग्रहीत किए जाने चाहिए, और क्रेडेंशियल्स को लॉग में उजागर नहीं किया जाना चाहिए।

प्रॉक्सी के माध्यम से POST अनुरोधों का उपयोग करना

यह उपयोगिता प्रॉक्सी सर्वर का समर्थन करती है, जिससे आप एक मध्यवर्ती सर्वर के माध्यम से अनुरोध भेज सकते हैं जो डेटा को लक्षित API (target API) तक अग्रेषित करता है। कॉर्पोरेट इंफ्रास्ट्रक्चर में, प्रॉक्सी का उपयोग अक्सर निम्न के लिए किया जाता है:

  • नेटवर्क सुरक्षा नीतियों को लागू करना;
  • पहुँच और ट्रैफ़िक नियंत्रण;
  • विभिन्न सेगमेंट और क्षेत्रों से API का परीक्षण करना;
  • लोड बैलेंसिंग और वितरण;
  • बाहरी सेवाओं तक केंद्रीकृत पहुँच।

निम्न तालिका एक तुलना प्रदान करती है:

प्रॉक्सी प्रकारउपयोग कब करेंकंपनी के लिए लाभ
HTTP प्रॉक्सीमानक वेब ट्रैफ़िक और APIsआसान एकीकरण और नियंत्रण
HTTPS प्रॉक्सीसुरक्षित कनेक्शनएन्क्रिप्शन और सुरक्षा
SOCKS5 प्रॉक्सीजटिल ट्रैफ़िक रूटिंगलचीलापन और विभिन्न प्रोटोकॉल के लिए समर्थन

बड़े पैमाने पर उपयोग से पहले विलंबता (latency) का परीक्षण करना, अनुरोधों की सफलता दर की निगरानी करना और टाइमआउट को सही ढंग से कॉन्फ़िगर करना महत्वपूर्ण है।

curl में POST अनुरोधों को डिबग करना

API विकसित और परीक्षण करते समय, curl POST डेटा के साथ बनाए गए अनुरोधों का निदान करना आवश्यक है। कई अंतर्निहित उपकरण आपको पूर्ण नेटवर्क एक्सचेंज, HTTPS हेडर, सर्वर प्रतिक्रिया कोड और कनेक्शन व्यवहार को देखने की अनुमति देते हैं। मुख्य विधियाँ नीचे दी गई हैं:

  • वर्बोज़ मोड (-v)। यह HTTP कनेक्शन का विवरण दिखाता है। इस आउटपुट में DNS रिज़ॉल्यूशन, TCP/TLS कनेक्शन, भेजे गए HTTP हेडर, अनुरोध निकाय और सर्वर हेडर शामिल हैं। यह यह समझना संभव बनाता है कि वास्तव में कौन सा अनुरोध भेजा गया था, सर्वर को कौन से हेडर प्राप्त हुए, और API ने क्या प्रतिक्रिया दी।
  • प्रतिक्रिया हेडर देखना। कभी-कभी विस्तृत नेटवर्क निदान के बिना प्रतिक्रिया हेडर देखना आवश्यक होता है। यह CORS की जाँच करने, Content-Type हेडर का विश्लेषण करने और प्रमाणीकरण को सत्यापित करने के लिए उपयोगी है।
  • टाइमआउट। कभी-कभी सर्वर धीरे जवाब देता है या कनेक्शन जम जाता है। Curl सीमाएं निर्धारित करने की अनुमति देता है। यह स्वचालित कार्यों, एकीकरण परीक्षणों और माइक्रोसर्विसेज सिस्टम के लिए महत्वपूर्ण है।
  • पुन: प्रयास (Retries)। यदि सेवा अस्थायी रूप से अनुपलब्ध है, तो Curl स्वचालित रूप से POST अनुरोध को फिर से भेज सकता है। यह अस्थायी नेटवर्क त्रुटियों, अस्थिर सेवाओं या वितरित प्रणालियों के लिए उपयोगी है।
  • सर्वर प्रतिक्रिया स्थिति कोड। अनुरोधों को डिबग करते समय, कुछ कोड सफल निष्पादन का संकेत देते हैं, और विकल्प त्रुटियों की पहचान करने में मदद करते हैं।
डिबगिंग विकल्पउद्देश्यउपयोग कब करें
-vनेटवर्क एक्सचेंज का विस्तृत आउटपुटAPI समस्याओं का निदान
-iHTTP प्रतिक्रिया हेडर प्रदर्शित करेंसर्वर प्रतिक्रिया का विश्लेषण
-w "%{http_code}"स्थिति कोड प्राप्त करनास्वचालित स्क्रिप्ट
--connect-timeoutकनेक्शन समय सीमित करेंअस्थिर नेटवर्क
--max-timeअनुरोध समय सीमित करेंस्वचालन
--retryअनुरोधों का पुन: प्रयासअस्थायी सर्वर विफलताएं
--traceपूर्ण नेटवर्क लॉगगहन निदान

इन सभी कमांड्स का उपयोग पूरे API सिस्टम को डिबग करने के लिए किया जा सकता है।

प्रदर्शन अनुकूलन रणनीतियां

API और नेटवर्क सेवाओं के साथ काम करते समय, HTTP अनुरोध प्रदर्शन को अनुकूलित करना महत्वपूर्ण है। उपयोगिता में अनुरोधों को गति देने के लिए कई उपकरण शामिल हैं। इनमें शामिल हैं:

  • कनेक्शन पुन: उपयोग। नया कनेक्शन स्थापित करने में दसियों मिलीसेकंड लग सकते हैं, इसलिए एक कनेक्शन का पुन: उपयोग कई अनुरोधों के लिए किया जा सकता है।
  • समानांतर अनुरोध। बड़ी संख्या में POST अनुरोध भेजते समय, उन्हें समानांतर में निष्पादित करना अधिक कुशल होता है।
  • टाइमआउट को कॉन्फ़िगर करना। गलत टाइमआउट के कारण स्क्रिप्ट फ्रीज हो सकती है, संसाधन अवरुद्ध हो सकते हैं, और नेटवर्क समस्याओं के दौरान लंबी देरी हो सकती है।
  • संपीड़न (Compression)। बड़े API प्रतिक्रियाओं को स्थानांतरित करने में महत्वपूर्ण नेटवर्क बैंडविड्थ का उपभोग हो सकता है, इसलिए curl संपीड़न का समर्थन करता है।

ये रणनीतियां निम्नलिखित लाभ प्रदान करती हैं:

  • तेज़ परीक्षण;
  • स्क्रिप्ट का उपयोग करके स्वचालन;
  • सटीक नियंत्रण।

नुकसान में कमांड-लाइन कौशल की आवश्यकता और मैन्युअल कॉन्फ़िगरेशन के दौरान त्रुटियों का जोखिम शामिल है।

एक सुरक्षित API POST वर्कफ़्लो का चरण-दर-चरण उदाहरण

एक सुरक्षित प्रक्रिया डेटा सटीकता और विश्वसनीय प्रतिक्रिया प्रसंस्करण सुनिश्चित करती है। यह इस तरह दिखता है:

  • API एंडपॉइंट को परिभाषित करें। सबसे पहले, उस URL को निर्धारित करें जो अनुरोध स्वीकार करता है। Curl POST अनुरोध उदाहरण इस तरह दिखता है: https://api.example.com/v1/users;
  • curl डेटा पेलोड प्रारूप तैयार करें। अधिकांश आधुनिक API JSON स्वीकार करते हैं। इसे संपादित करना आसान है, सिंटैक्स की जाँच करना सरल है, और स्वचालन में उपयोग करना अधिक सुविधाजनक है;
  • अनुरोधों में हेडर कस्टमाइज़ेशन। वे सर्वर को डेटा प्रकार, प्रतिक्रिया प्रारूप और अतिरिक्त अनुरोध पैरामीटर्स के बारे में सूचित करते हैं;
  • प्रमाणीकरण सेट करें। अधिकांश APIs को Bearer Token के माध्यम से पहचान की आवश्यकता होती है;
  • एक POST अनुरोध भेजें। इन सभी चरणों के बाद, वांछित अनुरोध निष्पादित किया जा सकता है।

इसके बाद, प्रतिक्रिया की जाँच की जा सकती है और अनुरोध परिणामों को सुरक्षित रूप से लॉग किया जा सकता है।

ग्राफ़िकल API टूल्स के साथ curl POST की तुलना

API अनुरोधों के साथ काम करते समय, CLI टूल्स और ग्राफ़िकल API क्लाइंट दोनों का उपयोग किया जाता है। डेवलपर्स और DevOps इंजीनियर अक्सर Curl का उपयोग करते हैं, जबकि ग्राफ़िकल टूल्स API के परीक्षण के लिए सुविधाजनक होते हैं।

टूल का प्रकारस्वचालनलचीलापनसर्वोत्तम उपयोग
CLI टूल्सउच्चबहुत उच्चस्क्रिप्टिंग, DevOps, CI/CD
GUI API क्लाइंटमध्यमउच्चAPI परीक्षण और विकास

Curl विशेष रूप से CI/CD और सर्वर स्वचालन में प्रभावी है।

अमेरिका में सुरक्षा और अनुपालन (Compliance) के विचार

API के साथ काम करते समय और अनुरोध भेजते समय, सुरक्षा और अनुपालन आवश्यकताओं पर विचार करना महत्वपूर्ण है। यह विशेष रूप से एंटरप्राइज़ सिस्टम, चिकित्सा सेवाओं और वित्तीय प्लेटफार्मों के लिए प्रासंगिक है। ऐसे विचारों में शामिल हैं:

  • API कुंजियों का सुरक्षित भंडारण;
  • एन्क्रिप्शन और डेटा सुरक्षा;
  • कॉर्पोरेट सुरक्षा नीतियों का उपयोग।

इसके अलावा, अमेरिकी कानून के अनुसार APIs का कानूनी और जिम्मेदारी से उपयोग करना महत्वपूर्ण है।

Curl POST अनुरोधों के व्यावसायिक उपयोग के मामले

कॉर्पोरेट वातावरण में उपयोग किए जाने वाले कई Curl POST अनुरोध उदाहरण हैं। इनमें शामिल हैं:

  • आंतरिक सेवाओं का स्वचालन;
  • निगरानी डेटा और लॉग भेजना;
  • क्लाउड प्लेटफार्मों के साथ एकीकरण;
  • बाहरी APIs और भागीदारों के साथ काम करना;
  • परीक्षण और QA।

इसके अतिरिक्त, सुरक्षा और एक्सेस कंट्रोल सिस्टम के साथ एकीकरण भी एक और Curl POST उदाहरण है।

INSOCKS प्रॉक्सी समाधान Curl वर्कफ़्लो का समर्थन कैसे करते हैं

INSOCKS के प्रॉक्सी समाधान कंपनियों को केंद्रीकृत नियंत्रण, सुरक्षा और लोड बैलेंसिंग के लिए नेटवर्क ट्रैफ़िक को प्रभावी ढंग से प्रबंधित करने में मदद करते हैं। INSOCKS के समाधान:

  • HTTP और SOCKS का समर्थन करते हैं;
  • स्थिर इंफ्रास्ट्रक्चर रखते हैं;
  • स्केलेबल IP पूल रखते हैं;
  • लचीले कॉन्फ़िगरेशन की सुविधा देते हैं।
फ़ंक्शनCurl उपयोगकर्ताओं के लिए INSOCKS के लाभ
HTTP और SOCKS प्रॉक्सीसभी अनुरोधों को केंद्रीकृत प्रॉक्सी के माध्यम से रूट करें
नोड रूटिंगविभिन्न नेटवर्क सेगमेंट और क्षेत्रों में APIs का परीक्षण करने की क्षमता
लोड बैलेंसिंगअनुरोधों को एकाधिक निकास बिंदुओं (exit points) पर वितरित करता है
स्वचालनCurl स्क्रिप्ट और CI/CD के साथ पूरी तरह से एकीकृत

प्रॉक्सी सभी आवश्यकताओं के अनुपालन को सुनिश्चित करने के लिए सभी अनुरोधों और प्रतिक्रियाओं को लॉग करते हैं।

अक्सर पूछे जाने वाले प्रश्न

Curl में -d और --data-binary के बीच क्या अंतर है?

पहला विकल्प डेटा को अनुरोध बॉडी में भेजता है, जबकि दूसरा डेटा को बिना किसी संशोधन के जस का तस भेजता है।

मैं POST अनुरोध के साथ JSON कैसे भेजूँ?

आपको एक JSON पेलोड फ़ाइल तैयार करनी होगी, उचित हेडर सेट करना होगा, और आवश्यक एट्रिब्यूट्स का उपयोग करके डेटा भेजना होगा।

क्या POST curl अनुरोध प्रमाणीकरण टोकन का उपयोग कर सकते हैं?

हाँ। ऐसे अनुरोधों में प्रमाणीकरण टोकन का उपयोग किया जा सकता है।

क्या Curl एंटरप्राइज़ स्वचालन के लिए उपयुक्त है?

हाँ। यह उपयोगिता कॉर्पोरेट वातावरण में स्वचालन के लिए उपयुक्त है।

क्या curl प्रॉक्सी के साथ काम कर सकता है?

हाँ। यह उपयोगिता प्रॉक्सी सर्वर के साथ अच्छी तरह से काम करती है।

2026-03-18