> percent | url | rfc3986 <
// ترميز النسبة المئوية - حوّل المحارف إلى صيغة %XX لعناوين URL و URI
متوافق مع المواصفات القياسية
يتبع مواصفات RFC 3986 الخاصة بترميز النسبة المئوية في عناوين URI.
يدعم يونيكود بالكامل
يتعامل بشكل صحيح مع محارف يونيكود المشفرة بـ UTF‑8 والرموز التعبيرية.
خيارات ترميز مرنة
اختر بين الترميز القياسي أو ترميز جميع المحارف دون استثناء.
>> معلومات تقنية
كيف يعمل ترميز النسبة المئوية:
يستبدل ترميز النسبة المئوية المحارف غير الآمنة في ASCII بعلامة النسبة المئوية (%) متبوعة برقمين ست عشريين يمثلان قيمة البايت للمحرف. تُشفَّر محارف UTF‑8 على شكل عدة تسلسلات %XX.
مثال:
"Hello World!" → Hello%20World%21
متى نستخدم ترميز النسبة المئوية:
- >ترميز عناوين URL و URI
- >إرسال بيانات النماذج
- >معاملات سلسلة الاستعلام
- >أجزاء المسار في عناوين URL
- >ترويسات HTTP وملفات تعريف الارتباط (cookies)
>> الأسئلة الشائعة
ما هو ترميز النسبة المئوية؟
ترميز النسبة المئوية (ويُسمى أيضاً ترميز عناوين URL) هو آلية لترميز المعلومات في URI عن طريق استبدال محارف ASCII غير الآمنة بعلامة "%" متبوعة برقمين ست عشريين.
متى يجب أن أستخدم ترميز النسبة المئوية؟
استخدم ترميز النسبة المئوية عند تضمين محارف خاصة في عناوين URL أو معاملات الاستعلام أو بيانات النماذج أو أي سياق يكون لبعض المحارف فيه معاني خاصة ويجب تهريبها.
ما الفرق بين encodeURI و encodeURIComponent؟
تُستخدم encodeURI لترميز URI كامل مع الإبقاء على محارف مثل :/?#[]@ دون تغيير. أما encodeURIComponent فترمز كل شيء تقريباً باستثناء المحارف غير المحجوزة (A‑Z, a‑z, 0‑9, -, _, ., ~).
لماذا تتحول المسافة إلى %20 أو +؟
في عناوين URL تُشفر المسافات عادةً على شكل %20. في بيانات النماذج (application/x-www-form-urlencoded) يمكن تمثيل المسافة بعلامة + لأسباب تاريخية. كلا الشكلين صحيح لكنهما يستخدمان في سياقات مختلفة.