curl کو Ruby میں تبدیل کریں

curl2code اسٹینڈرڈ net/http لائبریری کا استعمال کرتے ہوئے curl کمانڈز کو Ruby کوڈ میں تبدیل کرتا ہے۔ مکمل رازداری کے لیے سب کچھ WebAssembly کے ذریعے آپ کے براؤزر میں مقامی طور پر چلتا ہے۔ اگر آپ Python کو ترجیح دیتے ہیں، تو ہمارا curl to Python کنورٹر دیکھیں۔ Elixir کے لیے، curl to Elixir دیکھیں۔ نیچے عملی Ruby مثالیں دی گئی ہیں۔

اپنے براؤزر سے curl کاپی کرنے کا طریقہ

  1. 1

    DevTools کھولیں

    اپنے براؤزر کے ڈویلپر ٹولز کھولنے کے لیے F12 یا Ctrl+Shift+I دبائیں۔

  2. 2

    Network ٹیب پر جائیں

    Network ٹیب پر کلک کریں اور وہ عمل کریں جو HTTP درخواست کو متحرک کرتا ہے۔

  3. 3

    cURL کے طور پر کاپی کریں

    درخواست پر رائٹ کلک کریں ← CopyCopy as cURL۔ پھر اسے اوپر پیسٹ کریں۔

اکثر پوچھے جانے والے سوالات

Ruby net/http کیا ہے؟

Ruby کا net/http اسٹینڈرڈ لائبریری HTTP کلائنٹ ہے جو ہر Ruby انسٹالیشن کے ساتھ شامل ہوتا ہے۔ یہ GET، POST، ملٹی پارٹ اپ لوڈز، SSL، اور کسٹم ہیڈرز کو سنبھالتا ہے۔ کسی gem انسٹالیشن کی ضرورت نہیں ہے۔ curl2code، HTTParty کو بھی سپورٹ کرتا ہے، جو ایک مقبول gem ہے اور ایک صاف ستھرے، ڈکلیریٹو API کے ساتھ عام HTTP پیٹرنز کو آسان بناتا ہے۔

net/http بمقابلہ HTTParty بمقابلہ Faraday — مجھے کون سا استعمال کرنا چاہیے؟

net/http بلٹ ان اور ڈیپینڈینسی سے پاک ہے — سادہ کاموں اور اسکرپٹس کے لیے بہترین ہے۔ HTTParty خودکار JSON پارسنگ کے ساتھ ایک صاف ستھرا DSL فراہم کرتا ہے۔ Faraday مڈل ویئر، اڈاپٹر پیٹرنز، اور سب سے زیادہ لچک پیش کرتا ہے۔ اسی طرح کی اسکرپٹنگ سادگی کے لیے، ہمارا curl to Python converter یا curl to PHP دیکھیں۔

Ruby میں توثیق (authentication) کو کیسے سنبھالا جائے؟

net/http کے ساتھ: request["Authorization"] = "Bearer token"۔ Basic auth کے لیے: request.basic_auth("user", "pass")۔ HTTParty، headers: { "Authorization" => "Bearer token" } یا basic_auth: { username: "user", password: "pass" } استعمال کرتا ہے۔ curl2code، -u اور ہیڈر فلیگز دونوں کو سنبھالتا ہے۔

Ruby میں ملٹی پارٹ فارم ڈیٹا کیسے بھیجا جائے؟

net/http کے ساتھ، multipart-post gem استعمال کریں یا باؤنڈری اسٹرنگز کے ساتھ Net::HTTP::Post کا استعمال کرتے ہوئے دستی طور پر ملٹی پارٹ باڈی بنائیں۔ HTTParty اسے body: { file: File.open("path") } کے ساتھ آسان بناتا ہے۔ curl2code دونوں لائبریریوں کے لیے -F فلیگز کو تبدیل کرتا ہے۔

Ruby میں HTTP غلطیوں کو کیسے سنبھالا جائے؟

net/http کے ساتھ، response.is_a?(Net::HTTPSuccess) چیک کریں یا response.value استعمال کریں جو غیر 2xx اسٹیٹس پر ایرر دیتا ہے۔ HTTParty ایک رسپانس آبجیکٹ واپس کرتا ہے جس میں .success? اور .code میتھڈز ہوتے ہیں۔ مستقل کنکشنز کے لیے، Errno::ECONNREFUSED اور Net::ReadTimeout کو ریسکیو (rescue) کریں۔

Ruby میں کنکرنٹ (concurrent) HTTP درخواستیں کیسے کی جائیں؟

Ruby کی اسٹینڈرڈ لائبریری سنکرونس ہے۔ بنیادی کنکرنسی کے لیے Thread.new { ... } یا تھریڈ پولز کے لیے concurrent-ruby gem استعمال کریں۔ async I/O کے لیے، Async gem کے ساتھ async-http استعمال کریں۔ Typhoeus متوازی درخواستوں کی قطار بندی فراہم کرتا ہے۔ بلٹ ان async سپورٹ کے لیے، curl to Elixir دیکھیں۔

Ruby میں ٹائم آؤٹ کیسے سیٹ کریں؟

net/http کے ساتھ: http.open_timeout = 10 (کنکشن) اور http.read_timeout = 30 (جواب)۔ HTTParty، timeout: 30 آپشن قبول کرتا ہے۔ یہ curl کے --connect-timeout اور --max-time کے مطابق ہیں۔ درخواستوں کو غیر معینہ مدت تک لٹکنے سے بچانے کے لیے ہمیشہ ٹائم آؤٹ سیٹ کریں۔

Ruby میں پراکسی کیسے استعمال کریں؟

net/http کے ساتھ: Net::HTTP.new(host, port, proxy_host, proxy_port)۔ یا http_proxy اور https_proxy انوائرمنٹ ویری ایبلز سیٹ کریں — Ruby خودکار طور پر ان کا احترام کرتا ہے۔ HTTParty، http_proxy: 'http://proxy:8080' آپشن استعمال کرتا ہے۔ curl2code، -x فلیگز کو درست Ruby سنٹیکس میں تبدیل کرتا ہے۔

Ruby میں JSON باڈی کے ساتھ POST درخواست کیسے بھیجیں؟

curl2code کا استعمال کرتے ہوئے curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL جیسی curl POST کمانڈ کو Ruby میں تبدیل کریں۔ تیار کردہ کوڈ Net::HTTP.post(uri, data.to_json, 'Content-Type' => 'application/json') استعمال کرتا ہے۔ curl2code خودکار طور پر JSON مواد کے ساتھ -d/--data فلیگز کا پتہ لگاتا ہے اور net/http کوڈ میں مناسب Content-Type ہیڈر سیٹ کرتا ہے۔

Ruby میں Bearer ٹوکن کی اجازت کیسے شامل کریں؟

curl2code کو curl -H "Authorization: Bearer YOUR_TOKEN" URL فراہم کریں اور یہ auth ہیڈر کے ساتھ net/http کوڈ تیار کرتا ہے: req['Authorization'] = 'Bearer YOUR_TOKEN'۔ curl2code دونوں -H "Authorization: Bearer ..." اور --oauth2-bearer فلیگز سے Bearer ٹوکنز کا پتہ لگاتا ہے۔ Basic auth کے لیے، -u user:pass استعمال کریں۔

Ruby میں Content-Type ہیڈر کیسے سیٹ کریں؟

curl2code curl -H "Content-Type: application/json" URL کو مناسب ہیڈر کے ساتھ net/http کوڈ میں تبدیل کرتا ہے: req['Content-Type'] = 'application/json'۔ -d ڈیٹا کے لیے، curl ڈیفالٹ طور پر application/x-www-form-urlencoded استعمال کرتا ہے؛ -F فارم اپ لوڈز کے لیے، یہ multipart/form-data استعمال کرتا ہے۔ curl2code ہر ایک کو درست net/http API کے ساتھ میپ کرتا ہے۔

مفید لنکس

curl گائیڈز

curl کو دیگر زبانوں میں تبدیل کریں