curl-কে JavaScript-এ রূপান্তর করুন
curl2code নেটিভ fetch API ব্যবহার করে curl কমান্ডগুলোকে JavaScript কোডে রূপান্তর করে। সম্পূর্ণ গোপনীয়তার জন্য সবকিছু WebAssembly-এর মাধ্যমে আপনার ব্রাউজারে স্থানীয়ভাবে চলে। আপনার যদি সার্ভার-সাইড Node.js কোডের প্রয়োজন হয়, তবে আমাদের curl to Node.js converter ব্যবহার করে দেখুন। টাইপ সেফটির জন্য curl to TypeScript converter দেখুন। নিচে সাধারণ HTTP প্যাটার্নগুলোর ব্যবহারিক উদাহরণ দেওয়া হলো।
আপনার ব্রাউজার থেকে কীভাবে curl কপি করবেন
- 1
DevTools ওপেন করুন
আপনার ব্রাউজার ডেভেলপার টুলস ওপেন করতে F12 অথবা Ctrl+Shift+I চাপুন।
- 2
Network ট্যাবে যান
Network ট্যাবে ক্লিক করুন এবং সেই কাজটি করুন যা HTTP রিকোয়েস্টটি ট্রিগার করে।
- 3
cURL হিসেবে কপি করুন
রিকোয়েস্টের ওপর রাইট-ক্লিক করুন → Copy → Copy as cURL। তারপর এটি উপরে পেস্ট করুন।
সচরাচর জিজ্ঞাসিত প্রশ্নাবলী
Fetch API কী?
Fetch API হলো HTTP রিকোয়েস্ট করার জন্য সমস্ত ব্রাউজারে বিল্ট-ইন একটি আধুনিক, প্রমিজ-ভিত্তিক ইন্টারফেস। এটি পুরনো XMLHttpRequest-কে একটি পরিচ্ছন্ন এবং আরও শক্তিশালী API দিয়ে প্রতিস্থাপন করে। Fetch স্ট্রিমিং, রিকোয়েস্ট/রেসপন্স অবজেক্ট, CORS সমর্থন করে এবং async/await-এর সাথে স্বাভাবিকভাবে কাজ করে। কোনো ইনস্টলেশনের প্রয়োজন নেই — এটি গ্লোবাললি উপলব্ধ। JavaScript কনভার্সনের জন্য curl2code ডিফল্ট আউটপুট হিসেবে Fetch ব্যবহার করে।
Fetch বনাম XMLHttpRequest বনাম jQuery.ajax — কোনটি ব্যবহার করা উচিত?
Fetch হলো আধুনিক স্ট্যান্ডার্ড — নতুন প্রজেক্টের জন্য এটি ব্যবহার করুন। XMLHttpRequest পুরনো হলেও এখনও সব জায়গায় কাজ করে এবং নেটিভলি প্রগ্রেস ইভেন্ট সমর্থন করে। আপনার প্রজেক্টে যদি আগে থেকেই jQuery থাকে তবে jQuery.ajax সুবিধা যোগ করে। সার্ভার-সাইড JavaScript-এর জন্য, আমাদের curl to Node.js কনভার্টার দেখুন। টাইপ সেফটির জন্য, curl to TypeScript ট্রাই করুন।
Fetch-এর মাধ্যমে অথেনটিকেশন কীভাবে হ্যান্ডেল করবেন?
Authorization অপশনে একটি headers হেডার পাস করুন: fetch(url, { headers: { "Authorization": "Bearer token" } })। Basic অথেনটিকেশনের জন্য, btoa(user + ':' + pass) দিয়ে ক্রেডেনশিয়াল এনকোড করুন। curl2code স্বয়ংক্রিয়ভাবে -u এবং -H 'Authorization: ...' ফ্ল্যাগগুলো শনাক্ত করে।
Fetch দিয়ে কীভাবে মাল্টিপার্ট ফর্ম ডেটা পাঠাবেন?
একটি FormData অবজেক্ট তৈরি করুন এবং বডি হিসেবে পাস করুন: fetch(url, { method: "POST", body: formData })। ম্যানুয়ালি Content-Type সেট করবেন না — ব্রাউজার স্বয়ংক্রিয়ভাবে মাল্টিপার্ট বাউন্ডারি যোগ করে। curl2code -F ফ্ল্যাগগুলোকে FormData-তে কনভার্ট করে।
Fetch-এর মাধ্যমে এরর কীভাবে হ্যান্ডেল করবেন?
Fetch শুধুমাত্র নেটওয়ার্ক ফেইলিয়রের ক্ষেত্রে রিজেক্ট করে, HTTP এররের ক্ষেত্রে নয়। বডি রিড করার আগে সর্বদা response.ok অথবা response.status চেক করুন। নেটওয়ার্ক এবং পার্সিং এরর উভয়ই এক জায়গায় হ্যান্ডেল করতে try/catch-এর সাথে async/await ব্যবহার করুন।
Fetch-এর সাথে কীভাবে async/await ব্যবহার করবেন?
Fetch একটি Promise রিটার্ন করে, তাই const response = await fetch(url) এবং এরপর const data = await response.json() ব্যবহার করুন। এরর হ্যান্ডেল করার জন্য একটি try/catch ব্লকে রাখুন। এটি .then() চেইনের চেয়ে পরিচ্ছন্ন এবং আধুনিক JavaScript-এর জন্য প্রস্তাবিত প্যাটার্ন।
Fetch রিকোয়েস্টের জন্য কীভাবে টাইমআউট সেট করবেন?
AbortController ব্যবহার করুন: একটি কন্ট্রোলার তৈরি করুন, fetch-এ { signal: controller.signal } পাস করুন এবং controller.abort() দিয়ে নির্দিষ্ট সময় পর setTimeout কল করুন। আধুনিক ব্রাউজারগুলো সহজ এক-লাইনের সমাধান হিসেবে AbortSignal.timeout(5000) সমর্থন করে। curl-এর --max-time এই প্যাটার্নের সাথে ম্যাপ করা হয়।
Fetch-এর মাধ্যমে CORS সমস্যা কীভাবে হ্যান্ডেল করবেন?
CORS ব্রাউজার দ্বারা নিয়ন্ত্রিত হয়, Fetch দ্বারা নয়। mode: 'cors' (ডিফল্ট) সেট করুন এবং নিশ্চিত করুন যে সার্ভার সঠিক Access-Control-Allow-Origin হেডার পাঠাচ্ছে। ক্রেডেনশিয়ালের (কুকিজ) জন্য, credentials: 'include' যোগ করুন। সার্ভার-সাইড কোডের ক্ষেত্রে CORS প্রযোজ্য নয় — তার জন্য আমাদের curl to Node.js কনভার্টার দেখুন।
JavaScript-এ JSON বডি সহ একটি POST রিকোয়েস্ট কীভাবে পাঠাবেন?
curl2code ব্যবহার করে curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL এর মতো একটি curl POST কমান্ডকে JavaScript-এ রূপান্তর করুন। জেনারেট করা কোড fetch(url, { method: 'POST', body: JSON.stringify(data), headers: {'Content-Type': 'application/json'} }) ব্যবহার করে। curl2code স্বয়ংক্রিয়ভাবে JSON কন্টেন্ট সহ -d/--data ফ্ল্যাগ শনাক্ত করে এবং fetch কোডে উপযুক্ত Content-Type হেডার সেট করে।
JavaScript-এ Bearer token অথরাইজেশন কীভাবে যোগ করবেন?
curl2code-এ curl -H "Authorization: Bearer YOUR_TOKEN" URL পাস করুন এবং এটি অথরাইজেশন হেডার সহ fetch কোড জেনারেট করে: headers: { 'Authorization': 'Bearer YOUR_TOKEN' }। curl2code -H "Authorization: Bearer ..." এবং --oauth2-bearer উভয় ফ্ল্যাগ থেকে Bearer token শনাক্ত করে। Basic auth এর জন্য -u user:pass ব্যবহার করুন।
JavaScript-এ Content-Type হেডার কীভাবে সেট করবেন?
curl2code curl -H "Content-Type: application/json" URL কমান্ডকে সঠিক হেডার সহ fetch কোডে রূপান্তর করে: headers: { 'Content-Type': 'application/json' }। -d ডেটার জন্য curl ডিফল্টভাবে application/x-www-form-urlencoded ব্যবহার করে; -F ফর্ম আপলোডের জন্য এটি multipart/form-data ব্যবহার করে। curl2code প্রতিটি রিকোয়েস্টকে সঠিক fetch API-তে ম্যাপ করে।