URL Encoder/Decoder
URL encode decode
URL encode decode يعمل محليا في المتصفح الخاص بك
About the
يقوم URL Encoder بتحويل النص إلى نموذج مشفر بنسبة مئوية بحيث يظل موجودًا في عنوان URL، ويفك تشفيره مرة أخرى عندما تحدق في شيء مثل %E4%BD%A0%E5%A5%BD وتريد معرفة ما يقوله. إن الأحرف مثل المسافات وعلامات الضم وعلامات الاستفهام والأحرف غير ASCII جميعها لها معنى خاص داخل عنوان URL، لذا فإن تمريرها عبر الخام يكسر الرابط، أو ما هو أسوأ من ذلك، يغير بصمت ما يتلقاه الخادم. يستبدل التشفير كل حرف غير آمن بعلامة النسبة المئوية متبوعة برقمين سداسي عشري.
Where people use the
- إنشاء عنوان URL للبحث أو التصفية بقيمة تحتوي على مسافات.
- قراءة سلسلة مشفرة بنسبة مئوية منسوخة من شريط العناوين أو السجل.
- تحضير قيمة لاستدعاء واجهة برمجة التطبيقات (API) التي تتطلب تشفير الاستعلام.
- التحقق من سبب انقطاع الرابط الذي يحتوي على علامة العطف في المعلمة.
How to use the
- 1
اختر الاتجاه
يقوم Encode بتحويل النص القابل للقراءة إلى نموذج مشفر بنسبة مئوية؛ فك يرجعه مرة أخرى.
- 2
الصق النص
للتشفير، الصق القيمة التي تريد وضعها في سلسلة استعلام. لفك التشفير، قم بلصق الجزء المشفر بنسبة مئوية بالكامل.
- 3
تحويل
وتظهر النتيجة على الفور. إذا فشل فك التشفير، فهذا يعني أن الإدخال لم يكن بيانات مشفرة بنسبة مئوية صالحة.
- 4
انسخه إلى عنوان URL الخاص بك
توضع القيم المشفرة بعد علامة الاستفهام كأزواج الاسم=القيمة، ويتم ربطها بعلامات العطف.
النصائح وأفضل الممارسات
- قم بتشفير كل قيمة معلمة بشكل منفصل، وليس عنوان URL بالكامل.
- إذا كانت القيمة تبدو خاطئة على الخادم، فتحقق مما إذا كان قد تم ترميزها مرتين.
- تذكر الفرق: 20% لعناوين URL، بالإضافة إلى نصوص النماذج.
الأسئلة المتداولة
لماذا أصبحت المسافة %20 بدلاً من علامة الجمع؟
لأن هذا يستخدم encodeURIComponent، الذي يتبع المعيار الحديث وينتج %20. مساحة معنى علامة الجمع هي اتفاقية إرسال النموذج التي تنطبق فقط على أجسام application/x-www-form-urlencoded، وليس على المسار أو مقاطع الاستعلام بشكل عام.
لماذا يفشل فك التشفير في سلسلتي؟
عادة لأن علامة النسبة المئوية يتبعها شيء ليس رقمين سداسي عشري. يحدث ذلك عندما يتم تشفير سلسلة مرتين، أو عندما يتم قطعها في منتصف الحرف. فك تشفير طبقة واحدة في كل مرة.
هل يقوم بتشفير عنوان URL بأكمله مرة واحدة؟
فهو يقوم بتشفير مكون، وليس عنوان URL بالكامل. إذا قمت بتمرير عنوان URL كامل من خلاله، فسيتم أيضًا تشفير الخطوط المائلة والنقطتين وعلامات الاستفهام، مما ينتج عنه شيء لم يعد المتصفح قادرًا على استخدامه. قم بتشفير قيم المعلمات الفردية بدلاً من ذلك.
ماذا عن أحرف UTF-8 مثل الصينية أو الرموز التعبيرية؟
يتم ترميزها على أنها بايتات UTF-8 الخاصة بها، بحيث يتحول حرف واحد إلى عدة توائم تم تجاوزها بنسبة مئوية. هذا صحيح وكل خادم يتوقع UTF-8 سوف يقرأه مرة أخرى بشكل صحيح.
هل الخط المائل مشفر؟
نعم، يقوم encodeURIComponent بتشفير الشرطة المائلة. وهذا أمر متعمد: يجب ألا يتم الخلط بين الشرطة المائلة الموجودة داخل قيمة المعلمة وبين فاصل المسار.