cURL कन्वर्टर: cURL से Fetch, Python, Axios और भी

curl कमांड पेस्ट करें, जैसे ब्राउज़र DevTools से कॉपी की गई, और 8 भाषाओं में चलाने के लिए तैयार कोड पाएँ। हेडर, JSON बॉडी, फ़ॉर्म, फ़ाइल अपलोड, ऑथ और कुकीज़ सब कन्वर्ट होते हैं।

आपके ब्राउज़र में चलता हैसाइन-अप ज़रूरी नहींकुछ भी अपलोड नहीं होता

इसमें कन्वर्ट करें
JavaScript fetch

    

    cURL कन्वर्टर का उपयोग कैसे करें

    1. रिक्वेस्ट को cURL के रूप में कॉपी करें: Chrome या Firefox DevTools में Network टैब में किसी रिक्वेस्ट पर राइट-क्लिक करें → Copy → Copy as cURL।
    2. इसे इनपुट बॉक्स में पेस्ट करें। \ वाली मल्टी-लाइन कमांड, Windows की ^ continuation और $'…' स्ट्रिंग समर्थित हैं।
    3. टारगेट चुनें: JavaScript fetch, Axios, Node.js, Python requests, Python httpx, Go, PHP या HTTPie।
    4. आउटपुट के नीचे की चेतावनियाँ पढ़ें। उनमें वे ऑप्शन होते हैं जिनका टारगेट भाषा में कोई समकक्ष नहीं है।
    5. कोड कॉपी करें या फ़ाइल के रूप में डाउनलोड करें।

    curl कमांड को कोड में क्यों बदलें?

    curl HTTP की साझा भाषा है। API डॉक्स उदाहरण curl में दिखाते हैं, ब्राउज़र DevTools रिक्वेस्ट को curl के रूप में एक्सपोर्ट करते हैं, और सपोर्ट टीमें समस्या दोहराने के लिए curl भेजती हैं। जब आपको वह रिक्वेस्ट किसी एप्लिकेशन में चाहिए, तो उसे हाथ से दोबारा लिखना पड़ता है: हर -H को headers ऑब्जेक्ट में ले जाना, -d को बॉडी बनाना, -u को basic auth में बदलना और याद रखना कि -G डेटा को क्वेरी स्ट्रिंग में ले जाता है। यह कन्वर्टर आपके लिए यह अनुवाद करता है और ऐसा कोड बनाता है जिसे आप सीधे प्रोजेक्ट में पेस्ट कर सकते हैं।

    समर्थित curl ऑप्शन

    ऑप्शनकिसमें बदलता है
    -X, -I, -GHTTP मेथड (बॉडी होने पर POST माना जाता है)
    -H, -A, -e, -bहेडर, User-Agent, Referer और कुकीज़
    -d, --data-raw, --data-binary, --data-urlencode, --jsonरिक्वेस्ट बॉडी: JSON ऑब्जेक्ट, फ़ॉर्म फ़ील्ड या raw टेक्स्ट
    -FMultipart फ़ॉर्म डेटा, @file अपलोड सहित
    -u, --oauth2-bearerBasic auth या Bearer टोकन
    -k, -L, -m, -x, --compressedTLS वेरिफ़िकेशन, रीडायरेक्ट, टाइमआउट, प्रॉक्सी और कंप्रेशन

    JSON बॉडी असली ऑब्जेक्ट बनती है

    जब रिक्वेस्ट JSON भेजती है (Content-Type: application/json हेडर, --json, या ऐसी बॉडी जो JSON के रूप में पार्स हो), तो कन्वर्टर escape की गई स्ट्रिंग के बजाय नेटिव डेटा स्ट्रक्चर बनाता है: fetch के लिए JSON.stringify({...}), Axios के लिए साधारण ऑब्जेक्ट और requests व httpx के लिए Python dict (True, False, None) के साथ json=। इससे पेलोड को एडिट करना और उसमें वेरिएबल भरना आसान हो जाता है।

    ध्यान रखने वाले अंतर

    ब्राउज़र सर्टिफ़िकेट जाँच बंद नहीं कर सकते और न ही किसी एक रिक्वेस्ट को प्रॉक्सी से भेज सकते हैं, इसलिए ब्राउज़र fetch कोड में -k और -x सिर्फ़ कमेंट के रूप में आते हैं। curl तब तक रीडायरेक्ट फ़ॉलो नहीं करता जब तक आप -L न दें, जबकि fetch, requests और Go डिफ़ॉल्ट रूप से फ़ॉलो करते हैं। -d से भेजी गई बिना Content-Type वाली बॉडी को curl फ़ॉर्म-एनकोड करता है; अगर वह JSON जैसी दिखती है, तो कन्वर्टर उसे JSON के रूप में भेजता है और चेतावनी में आपको बताता है।

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

    क्या मेरी curl कमांड किसी सर्वर पर भेजी जाती है?
    नहीं। पार्सिंग और कोड जनरेशन पूरी तरह आपके ब्राउज़र में चलते हैं। DevTools से कॉपी की गई कमांड में अक्सर कुकीज़ और टोकन होते हैं, इसलिए कुछ भी अपलोड या स्टोर नहीं होता।
    Chrome से रिक्वेस्ट को cURL के रूप में कैसे कॉपी करें?
    DevTools (F12) खोलें, Network टैब पर जाएँ, रिक्वेस्ट पर राइट-क्लिक करें और Copy → Copy as cURL (bash) चुनें। Windows वाला cmd विकल्प भी यहाँ काम करता है।
    क्या यह फ़ाइल अपलोड संभालता है?
    हाँ। -F name=@file JavaScript में FormData, Python में files= dict, Go में mime/multipart और PHP में CURLFile बनता है। -d @file और -T file रिक्वेस्ट बॉडी फ़ाइल से पढ़ते हैं।
    जिन ऑप्शन को कन्वर्टर नहीं जानता, उनका क्या होता है?
    वे आउटपुट के नीचे चेतावनियों के रूप में दिखते हैं, ताकि कुछ भी चुपचाप न छूटे। -s, -v या -o जैसे सिर्फ़ आउटपुट वाले फ़्लैग अनदेखे किए जाते हैं क्योंकि वे रिक्वेस्ट नहीं बदलते।
    Python में requests इस्तेमाल करूँ या httpx?
    सिंक्रोनस स्क्रिप्ट के लिए requests लंबे समय से डिफ़ॉल्ट है। httpx का API लगभग एक जैसा है, यह HTTP/2 और async सपोर्ट जोड़ता है, और बिना कहे रीडायरेक्ट फ़ॉलो नहीं करता, जो curl से ज़्यादा मेल खाता है।

    संबंधित टूल्स