کدگذاری/رمزگشایی URL (تبدیل آدرسها و کوئریها)
کدگذاری و رمزگشایی URL (percent-encoding) به صورت آنی در مرورگر شما. جابجایی بین معادلهای encodeURIComponent / encodeURI و تشخیص کدگذاری مضاعف احتمالی.
تنظیمات
پیشرفته
از کدام یک استفاده کنم؟
مقدار پارامتر ← encodeURIComponent
بهترین برای مقادیر کوئری، بخشهای مسیر و نام فایلها (تبدیل ایمن با encodeURIComponent).
آدرس کامل URL ← encodeURI
جداکنندههایی مانند ؟ & = / را حفظ میکند تا آدرس URL خوانا باقی بماند.
+ در مقابل 20%
«20%» استاندارد است. «+» یک قرارداد در فرمها/کوئریها است؛ در صورت نیاز آن را فعال کنید.
نمونههای ورودی
- https://fa.wikipedia.org/wiki/جستجو?q=تهران ناهار&ref=email#بخش
- utm_source=email&utm_campaign=حراج بهاره ۲۰۲۶
- سلام/Hello?name=علی محمدی¬e=10%تخفیف
میانبرها
کدگذاری/رمزگشایی URL
Percent-encoding چیست؟
تبدیل کاراکترهای غیر ASCII و رزرو شده به توالیهای xx% تا بتوانند به طور ایمن در آدرسهای URL منتقل شوند.
تفاوت encodeURI و encodeURIComponent
از encodeURIComponent برای مقادیر تکی و از encodeURI برای کل آدرسهای URL استفاده کنید تا جداکنندهها تغییر نکنند.
نکته
اگر %25 مدام نمایش داده میشود، احتمالاً متن دو بار کدگذاری شده است. از بنر هشدار برای رمزگشایی مجدد و ایمن استفاده کنید.
سؤالات متداول
تفاوت + و 20% چیست؟
«20%» روش استاندارد RFC برای کدگذاری فواصل است. کاراکتر «+» عمدتاً در فرمهای HTML استفاده میشود و در رشتههای کوئری به عنوان فاصله تفسیر میگردد.
از کدام تابع استفاده کنم؟
فقط برای مقادیر (مقدار کوئری، نام فایل)، تبدیل encodeURIComponent را انتخاب کنید. برای کل آدرسهای URL که باید ؟ & = / را حفظ کنند، encodeURI را انتخاب کنید.
کدگذاری مضاعف چیست؟
اگر %25 (که کدگذاری شدهی «%» است) زیاد دیده شود، ممکن است مقدار دو بار کدگذاری شده باشد. از «رمزگشایی مجدد» برای بازیابی متن اصلی استفاده کنید.