ترميز وفك Base64 وbase64url وMIME بنص UTF-8 آمن للعربية والإيموجي
ترميز وفك ترميز الروابط (URL Encode / Decode)
رمّز النصوص وفُك ترميز الروابط بنسبة مئوية بأوضاع RFC 3986 وencodeURIComponent وencodeURI والنماذج (+ للمسافة)، مع تحليل الرابط وتحويل النطاقات punycode.
مساحة العمل
الأوضاع تختلف في المحارف التي تبقى بلا ترميز؛ تفاصيلها في قسم «كيف تُحسب النتيجة؟».
النتيجة
مكوّنات الرابط
معلمات الاستعلام (مفكوكة)
تحويل النطاقات الدولية (IDN ↔ punycode)
كيف تُحسب النتيجة؟
يُحوَّل النص إلى بايتات UTF-8 ثم يُرمَّز كل بايت خارج المجموعة المسموحة إلى %XX بأحرف كبيرة. المجموعات: RFC 3986 يُبقي A-Z a-z 0-9 - . _ ~ فقط؛ encodeURIComponent يضيف ! * ' ( )؛ encodeURI يضيف فوقها محارف البنية ; , / ? : @ & = + $ #؛ النماذج (WHATWG) يُبقي A-Z a-z 0-9 * - . _ ويحوّل المسافة إلى +. عند الفك يُتحقق من أن البايتات UTF-8 صالحة، ويُنبَّه إن بقيت تسلسلات %XX (ترميز مزدوج). تُفكّ النطاقات الدولية بخوارزمية Punycode (RFC 3492)، ويُحوَّل الاتجاه المعاكس عبر محلّل URL في المتصفح.
ß وأحرف الربط)، فيعتمد تحويل النطاق إلى ASCII على محلّل المتصفح. لا تفكّ % في وضع encodeURI للمحارف المحجوزة عمدًا. الأسرار في الروابط (رموز، كلمات مرور) لا تُرسل إلى أي خادم، لكن لا تلصقها في مكان عام.أسئلة شائعة
ما الفرق بين encodeURI وencodeURIComponent؟
encodeURI يترك محارف بنية الرابط (/ ? & = #) لأنه يُرمّز رابطًا كاملًا، أما encodeURIComponent فيرمّزها لأنه مخصّص لقيمة داخل الرابط مثل معامل استعلام.
لماذا تظهر المسافة +؟
في ترميز النماذج (application/x-www-form-urlencoded) تُكتب المسافة +، أما في مسار الرابط فتكون %20. اختر الوضع المناسب.
ما الترميز المزدوج؟
أن يُرمَّز نص مرمَّز سابقًا مرة ثانية، فيتحول %20 إلى %2520. تنبّه الأداة إن بقيت تسلسلات %XX بعد الفك.


