%20 · %C3%A9 · encodeURIComponent
URL এনকোডার ও ডিকোডার
URL এনকোডিং অনিরাপদ অক্ষরকে % আর দুটি হেক্স অঙ্ক দিয়ে বদলে দেয়: স্পেস হয় %20 আর é হয় %C3%A9। এনকোড, ডিকোড বা পার্স বেছে নিন, তারপর আপনার লেখা টাইপ বা পেস্ট করুন।
- a b&c=d → a%20b%26c%3Dd
- é → %C3%A9
- € → %E2%82%AC
- 😀 → %F0%9F%98%80
সবকিছু এই ট্যাবেই চলে, কিছুই আপলোড হয় না। ASCII-র বাইরের লেখা এস্কেপ করার আগে UTF-8-এ বদলানো হয়।
Scanned by NortonTM Safe Web
এক নজরে
- মূল্য
- কোনো চার্জ নেই
- অ্যাকাউন্ট
- লাগে না
- স্ট্যান্ডার্ড
- RFC 3986 (URI), WHATWG URL Standard
- মোড
- এনকোড, ডিকোড ও পার্স
- অক্ষর সেট
- UTF-8
- আপলোড
- নেই — লেখা আপনার ব্রাউজার ট্যাবেই থাকে
প্রচলিত অক্ষরের পারসেন্ট-এনকোডিং
প্রতিটি ঘর এই পেজের এনকোডার ও ডিকোডারই তৈরি করেছে। ␣ চিহ্নটি একটি স্পেস বোঝায়।
| অক্ষর | encodeURIComponent | encodeURI | ফর্ম (স্পেসের জন্য +) |
|---|---|---|---|
| ␣ | %20 | %20 | + |
| ! | ! | ! | %21 |
| " | %22 | %22 | %22 |
| # | %23 | # | %23 |
| $ | %24 | $ | %24 |
| % | %25 | %25 | %25 |
| & | %26 | & | %26 |
| ' | ' | ' | %27 |
| ( | ( | ( | %28 |
| ) | ) | ) | %29 |
| * | * | * | * |
| + | %2B | + | %2B |
| , | %2C | , | %2C |
| / | %2F | / | %2F |
| : | %3A | : | %3A |
| ; | %3B | ; | %3B |
| = | %3D | = | %3D |
| ? | %3F | ? | %3F |
| @ | %40 | @ | %40 |
| [ | %5B | %5B | %5B |
| ] | %5D | %5D | %5D |
| ~ | ~ | ~ | %7E |
| é | %C3%A9 | %C3%A9 | %C3%A9 |
| € | %E2%82%AC | %E2%82%AC | %E2%82%AC |
| 😀 | %F0%9F%98%80 | %F0%9F%98%80 | %F0%9F%98%80 |
| এস্কেপ | decodeURIComponent | decodeURI | ফর্ম |
|---|---|---|---|
| %2F | / | %2F | / |
| %3F | ? | %3F | ? |
| %23 | # | %23 | # |
| %20 | ␣ | ␣ | ␣ |
| %2B | + | %2B | + |
| %41 | A | A | A |
কীভাবে URL এনকোড বা ডিকোড করবেন
মোড বেছে নিন
লেখা এস্কেপ করতে এনকোড, এস্কেপ করা লেখা পড়তে ডিকোড, আর পুরো URL-কে প্রোটোকল, হোস্ট, পাথ, কোয়েরি ও ফ্র্যাগমেন্টে ভাগ করতে পার্স বেছে নিন।
পদ্ধতি বেছে নিন
কোয়েরি প্যারামিটারের মতো একটি মানের জন্য কম্পোনেন্ট পদ্ধতি ব্যবহার করুন। পুরো ঠিকানার জন্য সম্পূর্ণ-URL পদ্ধতি ব্যবহার করুন। HTML ফর্মে পাঠানো ডেটার জন্য ফর্ম পদ্ধতি ব্যবহার করুন।
পেস্ট করুন ও কপি করুন
আপনার লেখা টাইপ বা পেস্ট করুন। লেখার সঙ্গে সঙ্গে ফলাফল হালনাগাদ হয় আর কপি বোতাম থাকে। ভাঙা % ক্রম তার অবস্থান সহ জানানো হয়।
পারসেন্ট-এনকোডিং কীভাবে কাজ করে
পারসেন্ট-এনকোডিং (RFC 3986) একটি বাইটকে % আর তার পরে দুটি হেক্সাডেসিমাল অঙ্ক দিয়ে লেখে। লেখা আগে UTF-8-এ বদলানো হয়, তাই é হলো 2 বাইট (%C3%A9), € হলো 3 বাইট (%E2%82%AC) আর 😀 হলো 4 বাইট (%F0%9F%98%80)। অক্ষর, অঙ্ক আর - _ . ~ কখনো এনকোড করতে হয় না। / ? # & = + ও : এর মতো সংরক্ষিত অক্ষর URL-এ একটি কাজ করে, তাই সেগুলো এনকোড হবে কি না তা নির্ভর করে লেখাটি কোথায় যাচ্ছে তার ওপর।
encodeURIComponent URL-এর একটি অংশের জন্য, যেমন কোয়েরি মান: এটি / ? # & = + ও : এনকোড করে। encodeURI পুরো URL-এর জন্য: এটি ওই অক্ষরগুলো যেমন আছে তেমন রাখে, যাতে ঠিকানার কাঠামো থাকে। ফর্ম এনকোডিং (application/x-www-form-urlencoded) স্পেসকে %20-এর বদলে + লেখে এবং ~ ও ! ' ( )-ও এনকোড করে। ডিকোডে এমন % প্রত্যাখ্যাত হয় যার পরে দুটি হেক্স অঙ্ক নেই, আর তার অবস্থান জানানো হয়।
URL এনকোডিং নিয়ে প্রশ্ন
encodeURI আর encodeURIComponent-এর পার্থক্য কী?
encodeURIComponent অক্ষর, অঙ্ক আর - _ . ! ~ * ' ( ) ছাড়া সবকিছু এনকোড করে, তাই / ? # & = + ও :-ও এনকোড হয়। encodeURI ওই অক্ষরগুলো রেখে দেয়, যাতে পুরো URL চলে। একটি মানের জন্য কম্পোনেন্ট পদ্ধতি ব্যবহার করুন, যেমন a/b হয় a%2Fb, আর পুরো ঠিকানার জন্য encodeURI।
একটি জায়গায় স্পেস %20 আর অন্য জায়গায় + কেন?
%20 হলো স্পেসের পারসেন্ট-এনকোডিং আর URL-এর যেকোনো জায়গায় বৈধ। স্পেসের জন্য + শুধু ফর্ম এনকোডিংয়ের (application/x-www-form-urlencoded) অংশ, যা HTML ফর্মে পাঠানো কোয়েরি স্ট্রিংয়ের ফরম্যাট। আসল প্লাস চিহ্ন দুটো ক্ষেত্রেই %2B।
URL-এ ইউনিকোড অক্ষর এনকোড করব কীভাবে?
লেখাটিকে UTF-8-এ বদলান, তারপর প্রতিটি বাইট %XX হিসেবে লিখুন। é থেকে হয় %C3%A9, € থেকে %E2%82%AC আর 😀 থেকে %F0%9F%98%80। এই পেজ প্রতিটি এনকোড পদ্ধতিতেই এটি করে।
URL-এ কোন অক্ষরগুলো এনকোড করতেই হয়?
স্পেস, দ্বৈত উদ্ধৃতিচিহ্ন, < ও > আর ASCII-র বাইরের সব অক্ষর সবসময় এনকোড হয়। অক্ষর, অঙ্ক আর - _ . ~ কখনো হয় না। ? ও &-এর মতো সংরক্ষিত অক্ষর শুধু তখনই এনকোড হয় যখন সেগুলো ডেটা, URL কাঠামোর অংশ নয়।
ডিকোড অবৈধ পারসেন্ট ক্রম জানায় কেন?
একটি % এর পরে দুটি হেক্সাডেসিমাল অঙ্ক থাকতে হয়। 100% ব্যর্থ হয় কারণ % এর পরে কিছু নেই, ab%zz-ও তাই। পেজ ভুল % এর অবস্থান জানায়। %FF-এর মতো যে এস্কেপ করা বাইট বৈধ UTF-8 গড়ে না, সেগুলোও জানানো হয়।
এই পেজ কি URL-কে অংশে ভাগ করতে পারে?
হ্যাঁ। পার্স মোড ব্রাউজারের URL পার্সার দিয়ে প্রোটোকল, ইউজার নাম, হোস্ট, পোর্ট, পাথ, কোয়েরি ও ফ্র্যাগমেন্ট তালিকাভুক্ত করে, আর প্রতিটি কোয়েরি প্যারামিটার তার ডিকোড করা মান সহ দেখায়। URL-এর পাসওয়ার্ড আছে বলে জানানো হয়, কখনো ছাপা হয় না।