ডেভেলপার

URL Encoder / Decoder

স্পেস, চিহ্ন ও বিশেষ অক্ষর URL ভেঙে দেয় — পার্সেন্ট-এনকোডিং সেটা ঠিক করে। যেকোনো URL নিরাপদে পাঠানোর জন্য এনকোড করুন, অথবা তা পড়ার উপযোগী টেক্সটে তাৎক্ষণিকভাবে ডিকোড করুন।

এই ক্যালকুলেটরটি কি আপনাকে সাহায্য করেছে?

URL Encoder / Decoder কী?

URL Encoder/Decoder একটি অপরিহার্য ওয়েব ডেভেলপমেন্ট টুল যা সাধারণ টেক্সট এবং URL-নিরাপদ শতাংশ-এনকোডেড ফরম্যাটের মধ্যে রূপান্তর করে। যখন URLs এ স্পেস, বিশেষ প্রতীক, বা অ্যাকসেন্টেড অক্ষর এবং ইমোজির মতো নন-ASCII অক্ষর থাকে, তখন সঠিকভাবে এনকোড না করলে সেগুলি ভেঙে যায়। এই টুল তাৎক্ষণিক এনকোডিং এবং ডিকোডিং প্রদান করে URL মোড (সম্পূর্ণ URL এনকোডিং) এবং কম্পোনেন্ট মোড (পৃথক কোয়েরি পরামিতি মান এনকোডিং) উভয়ের সম্পূর্ণ সমর্থন সহ, পাশাপাশি একই সাথে একাধিক স্ট্রিং প্রক্রিয়াকরণের জন্য ব্যাচ মোড। এটি RFC 3986 এ সংজ্ঞায়িত সমস্ত মানক শতাংশ-এনকোডিং অপারেশন পরিচালনা করে।

এই ক্যালকুলেটর কখন ব্যবহার করবেন

  • আপনি স্পেস, চিহ্ন বা ASCII-বহির্ভূত অক্ষরযুক্ত কোয়েরি প্যারামিটার দিয়ে URL তৈরি করছেন
  • প্রকৃত বিষয়বস্তু পড়ার জন্য আপনাকে পার্সেন্ট-এনকোডেড URL ডিকোড করতে হবে
  • এনকোড করা হয়নি এমন বিশেষ অক্ষরের কারণে আপনার URL প্রত্যাখ্যান করছে এমন একটি API ডিবাগ করছেন
  • ব্যবহারের আগে পরিষ্কার করার প্রয়োজন এমন ব্যবহারকারী-জমা দেওয়া URL প্রক্রিয়া করছেন
  • একসাথে একাধিক URL সেগমেন্ট ব্যাচ-এনকোড বা ডিকোড করতে হবে
  • আপনি রিডাইরেক্ট বা কলব্যাক URL তৈরি করছেন যেখানে প্যারামিটার সঠিকভাবে এনকোড করা প্রয়োজন

ধাপসমূহ:

  1. এনকোড বা ডিকোড করতে চান এমন টেক্সট/URL টাইপ করুন বা পেস্ট করুন।
  2. এনকোড বা ডিকোড মোড নির্বাচন করুন।
  3. রূপান্তর বোতামে ক্লিক করুন।
  4. আপনার অ্যাপ্লিকেশনে ব্যবহার করতে ফলাফল কপি করুন।

সূত্র

এনকোডিং: অনিরাপদ অক্ষর → % + 2-অঙ্কের হেক্স কোড ➡ ডিকোডিং: %XX → মূল অক্ষর

ব্যবহারের ক্ষেত্র

  • URL-এর জন্য নিরাপদ কোয়েরি স্ট্রিং তৈরি করা
  • API রিকোয়েস্ট প্যারামিটার প্রক্রিয়াকরণ
  • এনকোড করা URL ডিবাগ করা
  • URL-বান্ধব স্লাগ ও পাথ তৈরি করা

প্রধান সুবিধাসমূহ

  • টাইপ করার সাথে সাথে তাৎক্ষণিক এনকোডিং এবং ডিকোডিং
  • বিভিন্ন এনকোডিং প্রসঙ্গের জন্য URL মোড এবং কম্পোনেন্ট মোড সমর্থন
  • একই সাথে একাধিক স্ট্রিং এনকোড বা ডিকোড করার জন্য ব্যাচ মোড
  • ইমোজি এবং অ্যাকসেন্টেড অক্ষর সহ সমস্ত বিশেষ অক্ষর পরিচালনা করে
  • সম্পূর্ণ ব্রাউজার-ভিত্তিক প্রক্রিয়াকরণ — কোনো সার্ভারে ডাটা পাঠানো হয় না
  • এনকোডিং ইনপুট ডুপ্লিকেট বা ছাঁটা করেনি তা যাচাই করতে ভিজ্যুয়াল অক্ষর গণনা

প্রো টিপস

  • ইনজেকশন আক্রমণ এবং ভাঙা লিঙ্ক প্রতিরোধ করতে URL-এ অন্তর্ভুক্ত করার আগে ব্যবহারকারী-তৈরি URL পরামিতি সবসময় এনকোড করুন
  • JavaScript এ পৃথক কোয়েরি পরামিতি মানের জন্য encodeURIComponent() ব্যবহার করুন — এটি encodeURI() এর চেয়ে বেশি অক্ষর এনকোড করে
  • ব্যবহারকারীদের কাছে প্রদর্শনের আগে URLs ডিকোড করুন — কাঁচা শতাংশ-এনকোডেড URLs অপেশাদার দেখায়
  • ডাবল-এনকোডিং সাবধান: যদি %25 এর পরে আরও হেক্স অঙ্ক দেখেন, তাহলে URL সম্ভবত দুইবার এনকোড করা হয়েছে
  • কোয়েরি স্ট্রিং তৈরির সময় কম্পোনেন্ট মোড এবং সম্পূর্ণ URL পাথ বা সম্পূর্ণ URL এনকোড করার সময় URL মোড ব্যবহার করুন

এড়ানোর সাধারণ ভুলসমূহ

  • ইতিমধ্যে এনকোডেড URL এনকোড করার মাধ্যমে URLs ডাবল-এনকোড করা, %20 কে %2520 তে রূপান্তরিত করে
  • ভুল এনকোডিং প্রসঙ্গ ব্যবহার করা — URL মোড এবং কম্পোনেন্ট মোড একই ইনপুটের জন্য ভিন্ন আউটপুট তৈরি করে
  • ভুলে যাওয়া যে + চিহ্ন শুধুমাত্র application/x-www-form-urlencoded ডাটায় স্পেস প্রতিনিধিত্ব করে
  • নন-ASCII অক্ষরগুলো সঠিকভাবে পরিচালনা না করা — শতাংশ-এনকোডিংয়ের আগে সবসময় UTF-8 এনকোডিং নিশ্চিত করুন

মূল শব্দ ব্যাখ্যা

শতাংশ-এনকোডিং: URL-এ অক্ষর এনকোড করার মানক পদ্ধতি, অনিরাপদ অক্ষরগুলিকে % এর পরে তাদের দুই-অঙ্কের হেক্সাডেসিমেল ASCII কোড দিয়ে প্রতিস্থাপন করে
কোয়েরি স্ট্রিং: URL-এ ? চিহ্নের পরের অংশ, & দ্বারা পৃথকীকৃত কী-ভ্যালু জোড়া ধারণ করে
সংরক্ষিত অক্ষর: :, /, ?, #, [, ], @, !, $, &, (, ), *, +, ,, ;, = — RFC 3986 অনুযায়ী URL বাক্যবিন্যাসে বিশেষ অর্থ বহন করে
কম্পোনেন্ট মোড বনাম URL মোড: কম্পোনেন্ট মোড আরও অক্ষর এনকোড করে এবং পৃথক মানের জন্য; URL মোড URL কাঠামো অক্ষর সংরক্ষণ করে এবং সম্পূর্ণ পাথের জন্য

সম্পর্কিত ধারণা

  • পার্সেন্ট-এনকোডিং: নিরাপদ URL পাঠানোর জন্য অনিরাপদ অক্ষরকে % এবং তারপরে দুই-অঙ্কের হেক্সাডেসিমেল ASCII কোড দিয়ে প্রতিস্থাপন করার পদ্ধতি
  • কোয়েরি স্ট্রিং: ? অক্ষরের পরে URL-এর অংশ, যা & অক্ষর দ্বারা বিভক্ত কী-ভ্যালু জোড়া ধারণ করে
  • সংরক্ষিত অক্ষর: RFC 3986 অনুযায়ী URL সিনট্যাক্সে বিশেষ অর্থবিশিষ্ট :, /, ?, #, [, ], @, !, $, &, (, ), *, +, ,, ;, =-এর মতো অক্ষর
  • URL-নিরাপদ অক্ষর: URL-এ এনকোডিংয়ের প্রয়োজন নেই এমন অসংরক্ষিত অক্ষর (অক্ষর, সংখ্যা, -, _, ., ~)
  • encodeURIComponent বনাম encodeURI: JavaScript ফাংশন, যেখানে encodeURIComponent পৃথক মানের জন্য অক্ষর, সংখ্যা ও _*-.~ ছাড়া সবকিছু এনকোড করে, অন্যদিকে encodeURI সম্পূর্ণ URL-এর জন্য URL কাঠামোর অক্ষর সংরক্ষণ করে

উদাহরণ

এনকোডিং "Hello World & Friends!" → "Hello%20World%20%26%20Friends%21"। ডিকোডিং "search%3Fq%3Dhello+world" → "search?q=hello world"।

আপনার ফলাফলের ব্যাখ্যা

এনকোডার URL-এর অনিরাপদ অক্ষরগুলোকে (স্পেস, &, ?, #, ASCII-বহির্ভূত ইত্যাদি) পার্সেন্ট-এনকোডেড ফরম্যাটে রূপান্তর করে, যেখানে প্রতিটি অক্ষর হয়ে যায় % এবং তারপরে দুই-অঙ্কের হেক্সাডেসিমেল কোড। ডিকোডার এই প্রক্রিয়া বিপরীত করে মূল পঠনযোগ্য টেক্সট পুনরুদ্ধার করে। অক্ষর গণনা আপনাকে নিশ্চিত করতে সাহায্য করে যে এনকোডিং আপনার ইনপুট অপ্রত্যাশিতভাবে ডুপ্লিকেট বা কেটে দেয়নি। কম্পোনেন্ট মোড অক্ষরের বিস্তৃত সেট এনকোড করে এবং পৃথক কোয়েরি প্যারামিটার মান এনকোড করার জন্য ডিজাইন করা হয়েছে। URL মোড কী এনকোড হবে সে বিষয়ে কঠোর এবং সম্পূর্ণ URL পাথ বা পুরো URL এনকোড করার জন্য ডিজাইন করা হয়েছে। কোয়েরি স্ট্রিং তৈরি করার সময় কম্পোনেন্ট মোড ব্যবহার করুন এবং সম্পূর্ণ URL এনকোড করার সময় URL মোড ব্যবহার করুন। ব্যাচ মোড আপনাকে একসাথে একাধিক লাইন এনকোড বা ডিকোড করতে দেয়, যা প্রক্রিয়াজাত করার জন্য URL বা প্যারামিটারের তালিকা থাকলে কাজে লাগে। প্রতিটি লাইনকে আলাদা ইনপুট হিসেবে গণ্য করা হয় এবং সব ফলাফল সহজে কপি করার জন্য একসাথে দেখানো হয়।

সচরাচর জিজ্ঞাসিত প্রশ্ন

URL-এর এনকোডিং কেন প্রয়োজন?
URL-এ কেবল নির্দিষ্ট কিছু ASCII অক্ষর থাকতে পারে। স্পেস, &, ?, #-এর মতো অক্ষর এবং ASCII-বহির্ভূত অক্ষরগুলিকে এনকোড করতে হবে (পার্সেন্ট-এনকোডিং), যাতে ইন্টারনেটে নিরাপদে পাঠানো যায়।
পার্সেন্ট-এনকোডিং কী?
পার্সেন্ট-এনকোডিং-এ অনিরাপদ অক্ষরকে % চিহ্ন এবং তারপরে দুই-অঙ্কের হেক্সাডেসিমেল কোড দিয়ে প্রতিস্থাপন করা হয়। যেমন, স্পেস হয়ে যায় %20 এবং & হয়ে যায় %26।
URL এনকোডিং কি HTML এনকোডিংয়ের মতো?
না। URL এনকোডিং (পার্সেন্ট-এনকোডিং) URL-এর জন্য। HTML এনকোডিং-এ &-এর জন্য &amp; বা <-এর জন্য &lt;-এর মতো এন্টিটি ব্যবহার হয়। ওয়েব ডেভেলপমেন্টে এদের উদ্দেশ্য ভিন্ন।
কখন কম্পোনেন্ট মোডের বদলে URL মোড ব্যবহার করব?
একটি একক কোয়েরি প্যারামিটারের মান এনকোড করার সময় (যেমন, একটি সার্চ শব্দ) কম্পোনেন্ট মোড ব্যবহার করুন। সম্পূর্ণ URL পাথ এনকোড করার সময় বা পুরো স্ট্রিং URL-এর জন্য নিরাপদ হওয়ার প্রয়োজন হলে URL মোড ব্যবহার করুন। কম্পোনেন্ট মোড বেশি অক্ষর এনকোড করে কারণ এটি ধরে নেয় মানটি URL কাঠামোর ভেতরে বসানো হবে।
কেন 'Hello World' এনকোড করলে 'Hello+World'-এর বদলে 'Hello%20World' পাওয়া যায়?
URL পাথ সেগমেন্টে স্পেস %20 হিসেবে এনকোড হয়। স্পেসের জন্য + এনকোডিং কেবল application/x-www-form-urlencoded ডেটায় (HTML ফর্ম সাবমিশন) ব্যবহৃত হয়। আধুনিক সেরা অনুশীলন হলো URL-এ ধারাবাহিকভাবে %20 ব্যবহার করা। ক্যালকুলেটর URL এনকোডিংয়ের জন্য %20 ব্যবহার করে।
আমি কি ইমোজি বা উচ্চারণচিহ্নযুক্ত অক্ষরের মতো ASCII-বহির্ভূত অক্ষর এনকোড করতে পারি?
হ্যাঁ। ASCII-বহির্ভূত অক্ষর প্রথমে UTF-8 বাইটে রূপান্তরিত হয়, তারপর প্রতিটি বাইট পার্সেন্ট-এনকোড হয়। যেমন, ইমোজি ☺ (U+1F600) হয়ে যায় %F0%9F%98%80। é (U+00E9)-এর মতো উচ্চারণচিহ্নযুক্ত অক্ষর হয়ে যায় %C3%A9। এটি RFC 3986-এ সংজ্ঞায়িত মানক পদ্ধতি।
এটার সাথে HTML এন্টিটি এনকোডিংয়ের পার্থক্য কী?
URL এনকোডিং (পার্সেন্ট-এনকোডিং) URL-এর জন্য — এটি অক্ষরকে %XX হেক্স কোডে রূপান্তর করে। HTML এন্টিটি এনকোডিং অক্ষরকে নামযুক্ত বা সংখ্যাসূচক এন্টিটিতে রূপান্তর করে, যেমন &-এর জন্য &amp; বা €-এর জন্য &#8364;। এরা সম্পূর্ণ ভিন্ন উদ্দেশ্যে কাজ করে এবং পরস্পর বদলানো যায় না।
কিছু URL-এ বিশেষ অক্ষর থাকা সত্ত্বেও কেন এনকোডিং ছাড়াই কাজ করে?
আধুনিক ব্রাউজারগুলো আপনি URL-এ নেভিগেট করলে বা ফর্ম সাবমিট করলে স্বয়ংক্রিয়ভাবে URL এনকোড করে। তবে আপনি যখন প্রোগ্রামেটিকভাবে URL তৈরি করেন (কোড, API কল বা সার্ভার-সাইড রিডাইরেক্টে), আপনাকে ম্যানুয়ালি এনকোড করতে হবে, কারণ সার্ভার আপনার জন্য সেটা করবে না।
ডাবল-এনকোডিংয়ের ঝুঁকি আছে কি?
হ্যাঁ। আপনি যদি ইতিমধ্যে এনকোড করা URL-কে এনকোড করেন, %20 হয়ে যায় %2520, যা ভুল। আবার এনকোড করার আগে সবসময় পরীক্ষা করুন আপনার ইনপুট আগে থেকেই এনকোড করা আছে কি না। এই ক্যালকুলেটর ডিকোড করা আউটপুট দেখায়, যাতে আপনি নিশ্চিত করতে পারেন ফলাফল সঠিক।
JavaScript-এ এনকোড করা URL কীভাবে সামলাব?
ডিকোড করার জন্য decodeURIComponent() এবং পৃথক মান এনকোড করার জন্য encodeURIComponent() ব্যবহার করুন। সম্পূর্ণ URL-এর জন্য decodeURI() এবং encodeURI() ব্যবহার করুন, যা URL কাঠামোর অক্ষর (/, ?, # ইত্যাদি) সংরক্ষণ করে। কখনও escape() বা unescape() ব্যবহার করবেন না — এগুলো অবচিত এবং Unicode সঠিকভাবে সামলাতে পারে না।

আরও টুল আবিষ্কার করুন

আমাদের পুরো টুল লাইব্রেরি থেকে নতুন নির্বাচন।