كيفية ترميز سلسلة نصية لعنوان URL
يستبدل الترميز بالنسبة المئوية كل حرف غير آمن في عنوان URL بالعلامة % متبوعة بالقيمة الست عشرية لكل بايت من بايتات UTF-8 الخاصة به. وضع «المكون» الذي يستخدم encodeURIComponent() هو الخيار المناسب لقيمة استعلام واحدة أو لجزء واحد من المسار.
مثال محلول
| الحرف | بايتات UTF-8 | المكون |
|---|---|---|
| ␠ | %20 | %20 |
| & | %26 | %26 |
| = | %3D | %3D |
| / | %2F | %2F |
| ? | %3F | %3F |
| é | %C3 %A9 | %C3%A9 |
| 😀 | %F0 %9F %98 %80 | %F0%9F%98%80 |
يرمّز وضع «المكون» العبارة كاملة في قيمة واحدة آمنة.
- المدخل
- rock & roll/size=XL? café 😀
- النتيجة ·
encodeURIComponent() - rock%20%26%20roll%2Fsize%3DXL%3F%20caf%C3%A9%20%F0%9F%98%80
يترك وضع «عنوان URL الكامل» الرموز & = / ? دون تغيير، لذا استخدمه مع عنوان URL كامل فقط.
- المدخل
- rock & roll/size=XL? café 😀
- النتيجة ·
encodeURI() - rock%20&%20roll/size=XL?%20caf%C3%A9%20%F0%9F%98%80
كيف تتعامل الأداة مع ذلك
- الأحرف A–Z وa–z والأرقام 0–9 والرموز - _ . ! ~ * ' ( ) لا تتغير أبدًا.
- يُحوَّل أي حرف آخر إلى بايتات UTF-8، ويُكتب كل بايت على شكل % يليها رقمان ست عشريان بأحرف كبيرة: يشغل الحرف é بايتين، ومعظم الرموز التعبيرية أربعة.
- يرمّز وضع «المكون» أيضًا الأحرف المحجوزة : / ? # [ ] @ & = + $ , ; حتى لا تغيّر بنية عنوان URL.