كيف يعمل
تتم كتابة كل حرف خارج المجموعة المسموح بها كعلامة مئوية متبوعة برقمين سداسي عشري من بايت UTF-8 الخاص به. encodeURIComponent يهرب من كل شيء باستثناء A-Z a-z 0-9 - _ . ! ~ * ( ) بينما يحافظ encodeURI على علامات الترقيم المحجوزة لعنوان URL سليمة.
- استخدم وضع المكون لقيم الاستعلام؛ يحتفظ وضع URL الكامل بـ : / ؟ & = سليمة.
لماذا يهم
تنقطع سلاسل الاستعلام بطرق خفية: عبارة بحث تحتوي على معلمة جديدة وتنشئها بصمت، وتغير الشرطة المائلة داخل اسم الملف المسار، وتنتهي المسافة في مكان غير متوقع. التشفير بشكل صحيح هو الفرق بين الرابط العامل وتذكرة الدعم.
مثال عملي
يقوم encodeURIComponent("a b&c") بإرجاع %20b%26c، بينما يحتفظ encodeURI بـ & لأنه يتعامل مع السلسلة كعنوان URL كامل. يؤدي اختيار الخيار الخاطئ إلى تغيير مكان تقسيم الاستعلام.
الأخطاء الشائعة
- استخدام ترميز URL الكامل لقيمة استعلام واحدة.
- من المتوقع أن يقوم decodeURIComponent بتحويل + إلى مسافة؛ هذا هو ترميز النموذج.
- الترميز مرتين وأتساءل لماذا يرى الخادم %2520.
نصائح عملية
قم بتشفير كل قيمة استعلام بشكل منفصل، ثم قم ببناء عنوان URL من الأجزاء المشفرة. إذا كانت القيمة تبدو مشفرة بالفعل، فقم بفك تشفيرها مرة واحدة ثم أعد تشفيرها من النموذج الذي تم فك تشفيره - يعد التشفير المتكرر المصدر الأكثر شيوعًا للأخطاء ذات النمط %25.
كيفية استخدامه
- افتح الأداة. كل شيء يعمل في علامة تبويب المتصفح الخاص بك.
- الصق إدخالك أو اكتبه، ثم اختر الإجراء الذي تحتاجه.
- التحقق من النتيجة ونسخها بنقرة واحدة.
الأسئلة الشائعة
متى يمكنني استخدام المكون مقابل عنوان URL الكامل؟
مكون لقيمة استعلام واحد، حيث / ؟ & = يجب الهروب. عنوان URL الكامل يحافظ على هذه الفواصل سليمة.
لماذا تصبح المسافات %20؟
يمثل ترميز النسبة المئوية مسافة مثل %20. ينتمي النموذج + إلى ترميز نماذج HTML، وليس عناوين URL.
لماذا يترك فك التشفير + علامات؟
لا يتعامل decodeURIComponent مع + كمسافة. استبدل + بمسافة أولاً إذا جاءت القيمة من إرسال النموذج.
هل هذه الأداة مجانية حقا؟
نعم. لا يوجد حساب ولا يوجد نظام حظر الاشتراك غير المدفوع ولا يوجد حد للاستخدام. يتم تمويل تطبيق Tools بواسطة aumenso، الاستوديو الذي يقف وراءه.
هل تم تحميل أي شيء أقوم بإدخاله؟
لا، تعمل الأداة في علامة تبويب المتصفح الخاص بك؛ ما تدخله لا يتم إرساله إلينا ولا يتم تخزينه أبدًا.