ForHosting KIT · أدوات المطورين

مرمّز ومفكّك UTF-7

رمّزوا النص بـ UTF-7 ليعبر القنوات التي لا تضمن إلا سبع بتات: تصبح café ‏caf+AOk-، ويعيد فك الترميز الكلمة الأصلية. تبقى الحروف الإنجليزية مقروءة، ولا يدخل المقاطع القصيرة إلا غيرها. مجاني في متصفحكم.

  • مجاني
  • يعمل في متصفحك
  • دون تسجيل
  • بياناتك لا تغادر جهازك
استخدمها من الويبAPIالبريدTelegramالتطبيق قريبًا
إذا أدخلت
النص
café
وضع الحساب
Encode
تحصل على
النتيجة
caf+AOk-
الترميز
utf-7
طول المُدخَل
4
طول المُخرَج
8

يحوّل مرمّز UTF-7 هذا نص يونيكود الصريح إلى تحويل UTF-7 الآمن بسبعة بتات المعرّف في RFC 2152، ويفكّ سلاسل UTF-7 إلى يونيكود مقروء. يحافظ UTF-7 على مقروئية أحرف ASCII اليومية بينما يعبّئ المقاطع غير ASCII في تسلسلات Base64 المعدّل المبدوءة بعلامة الزائد والمبنية من وحدات رموز UTF-16BE؛ ولهذا ما زالت مسارات البريد القديمة ونقاشات أدوات IMAP السابقة وتركيبات التوافق تستشهد به عندما لا يُضمن النقل بثمانية بتات. المحرك حتمي بالكامل: المدخل والوضع نفسهما يعطيان دائمًا النتيجة نفسها، بلا استدعاءات شبكة ولا أملاح عشوائية ولا اختصارات تعتمد على التاريخ. تشمل الفحوص الشائعة ترميز café إلى caf+AOk- وفكّ تلك السلسلة إلى الكلمة الأصلية.

ما هو UTF-7 وماذا تُرجع هذه الأداة

UTF-7 ترميز بأسلوب نقل المحتوى ليونيكود صُمم ليتمكن النص من المرور عبر أنظمة لا تضمن سوى أمان ASCII بسبعة بتات. تظهر أحرف المجموعة المباشرة — الحروف والأرقام وقائمة قصيرة من علامات الترقيم وASCII القابل للطباعة الاختياري والفراغ العادي — كما هي، فتبقى النثر الإنجليزي مقروءًا في الشكل المرمّز.

أي حرف خارج تلك المجموعة، بما في ذلك الحروف اللاتينية المعلّمة واليونانية وCJK والرموز التعبيرية ونقاط الرمز خارج BMP، يُجمع في مقطع مُزاح: علامة زائد، وجسم Base64 معدّل بلا علامات يساوي للحشو، وشرطة إنهاء اختيارية عندما كان الحرف التالي سيُمتص في أبجدية Base64. علامة الزائد الحرفية حالة خاصة تُكتب زائد-شرطة كي لا تبدأ إزاحة عرضية.

تلتزم هذه الصفحة دائمًا بعقد RFC 2152 للنص الصريح: يمرّ وضع encode على نقاط رمز يونيكود ويمرّر الأحرف المباشرة ويعبّئ المقاطع غير المباشرة كوحدات UTF-16 بترتيب البايتات الكبير ويصدر شكل Base64 المُزاح؛ ينسخ وضع decode النص المباشر ويوسّع المقاطع المُزاحة ويرفض أجسام Base64 الفارغة أو الناقصة بدل التخمين. إن احتجتم إلى تعبئة ثنائية معتمة ففضّلوا نقاط Base64 أو Base64url؛ وإن احتجتم إلى UTF-7 المعدّل لـ IMAP لأسماء الصناديق بمقدّمة علامة العطف، فذلك أبجدية أخرى وليست هذه الصفحة.

أين يناسب UTF-7 في البريد والبوابات القديمة وتركيبات الاختبار

يلتقي المطوّرون بـ UTF-7 عند فحص ترميزات البريد التاريخية، أو إعادة إنتاج حالات التوافق من أمثلة RFC 2152 مثل تسلسل الوجه المبتسم Hi Mom -+Jjo!، أو التأكد من أن علامة في café تصبح مقطعًا مُزاحًا قصيرًا لا Base64 معتمًا للرسالة كلها. تفكّ فرق الواجهة والدعم مقتطفات UTF-7 أثناء التحقيق في التذاكر دون لصق البيانات في سكربتات مرتجلة تسيء معاملة مُنهي الشرطة أو تعامل زائد-شرطة كإزاحة فارغة. ترمّز خدمات الخلفية عيّنات إعداد أو سلاسل قصيرة متعددة اللغات قبل وضعها على مسارات مقيّدة بسبعة بتات حيث لا يُضمن النقل النظيف بثمانية بتات.

يولّد مهندسو الجودة أزواج encode وdecode حتمية لاختبارات العقد حتى لا تستطيع مكتبة تدّعي دعم UTF-7 تغيير قواعد المُنهي بصمت أو إسقاط أحرف متبقية بعد مقطع مُزاح. يستخدم المعلّمون الأداة نفسها عند شرح الفرق بين تفريغات بايتات UTF-8 الست عشرية، وهروب equals-hex في quoted-printable، وBase64 المُزاح بعلامة الزائد في UTF-7 للحمولات النصية غالبًا. اقرنوه بمساعدات quoted-printable وBase64 عند الحاجة إلى ترميزات نقل ذات صلة، وبأدوات نصية أخرى عند بناء مختبر صغير من مرمّزات مجانية وحتمية.

تصحيح بريد قديم

رمّزوا أو فكّوا مقتطفات UTF-7 من رسائل تاريخية حتى تطابق العلامات ومقاطع Base64 المُزاحة ما كانت تتوقعه البوابات الأقدم.

تجهيز مسارات سبعة بتات

حوّلوا نص يونيكود الصريح إلى UTF-7 آمن للنقل قبل الإرسال عبر قنوات مقيّدة بـ ASCII فقط.

بماذا يختلف UTF-7 عن Base64 أو UTF-8؟

UTF-8 ترميز بايتات ليونيكود. Base64 يرمّز كل بايت في أبجدية معتمة. يحافظ UTF-7 على مقروئية معظم ASCII ويزيح فقط الأحرف غير المباشرة إلى مقاطع Base64 بعلامة الزائد من وحدات UTF-16BE.

ماذا يحدث إذا كان تسلسل الإزاحة تالفًا؟

يُرفض زائد وحيد في النهاية، أو جسم Base64 فارغ بعد الزائد، أو طول بايتات مفكوكة فردي بدل التخمين.

هل النتيجة حتمية؟

نعم. نفس text وmode يعطيان دائمًا النتيجة نفسها بلا شبكة ولا عشوائية ولا سلوك يعتمد على التاريخ.

لماذا تصبح café بترميز UTF-7 ‏caf+AOk-؟

تنتمي الحروف c وa وf إلى المجموعة المباشرة فتبقى كما هي. أما é فلا تنتمي إليها، فتدخل في مقطع مُزاح يبدأ بعلامة الجمع، ثم جسم Base64 قصير بلا حشو، ثم شرطة تغلقه.

هل هذا هو UTF-7 نفسه المستخدم في أسماء مجلدات IMAP؟

لا. يبدأ UTF-7 المعدّل في IMAP مقاطعه بعلامة العطف ويستخدم أبجدية مختلفة. أما هذه الأداة فتتبع RFC 2152 للنص العادي، وتبدأ فيها المقاطع المُزاحة بعلامة الجمع.

كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.

POSThttps://api.kit.forhosting.com/enc/utf7

صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.

curl -X POST https://api.kit.forhosting.com/enc/utf7 \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"café"}'
{
  "text": "café"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.utf7",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.

لكل طلب$0.002

السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.

HTTPالرمزالمعنى
401unauthorizedمفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك.
402insufficient_balanceرصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة.
404unknown_typeنوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب.
429rate_limitedتجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة.

اختاروا encode لتحويل عبارة أو جزء من الموضوع أو تركيبة متعددة اللغات إلى UTF-7 آمن للنقل، أو decode لاستعادة النص الأصلي من حمولة UTF-7 لديكم. استخدموه مجانًا في المتصفح لتصحيح البريد وممارسة يونيكود، أو استدعوا API بسعر $0.002 لكل طلب ناجح عندما تحتاج المسارات إلى تحويلات UTF-7 قابلة للتكرار في CI وخدمات الخلفية.

ما هو UTF-7 وماذا تُرجع هذه الأداة

تتضمن استجابة JSON الحقل result للسلسلة المحوّلة، وmode الذي يعيد encode أو decode، وencoding ثابتًا على utf-7، وinput_length مع output_length مقيسين بطول سلسلة JavaScript حتى تستطيع الاختبارات التحقق من الأحجام. لا مسار بث ولا إصلاح صامت للإزاحات المكسورة: إما أن تكون السلسلة UTF-7 صالحًا أو يفشل الطلب بـ invalid_input.

كيف يُقرآن text وmode وكيف تبقى النتائج قابلة للتكرار

الوضع mode يكون encode افتراضيًا ويقبل decode صراحة؛ وتُربط الأسماء المستعارة op وdirection وaction بنفس المفتاح للسكربتات التي تستخدم تلك الأسماء أصلًا. يقبل encode أي سلسلة يونيكود ويمرّ على نقاط الرمز حتى تبقى أزواج الوكلاء خارج المستوى متعدد اللغات الأساسي سليمة، ويُصدر أحرف Set D وSet O والفراغ كما هي، ويحوّل زائدًا عاريًا إلى زائد-شرطة، ويغلّف المقاطع غير المباشرة في Base64 معدّل مُزاح. بعد استعادة البايتات تُفسَّر كوحدات رموز UTF-16BE وتُعاد تجميعها في سلسلة JavaScript. حقل الحمولة المفضّل هو text مع الأسماء المستعارة input وvalue وs حتى تعيد النماذج وسلاسل الاستعلام وعملاء SDK استخدام العقد نفسه دون إعادة تسمية الأعمدة. يتطلّب decode سلسلة UTF-7 سليمة الشكل: زائد وحيد في نهاية المدخل، أو زائد يليه حرف غير Base64 وليس شرطة، أو جسم Base64 فارغ، أو جسم Base64 يتوسّع إلى عدد فردي من البايتات، تفشل كلها برسالة invalid_input واضحة تسمّي تسلسل الإزاحة التالف. اقرنوا التشغيل المجاني في متصفح هذه الصفحة بواجهة API المدفوعة عندما تحتاجون النتيجة الرياضية نفسها داخل مسار آلي دون إعادة تنفيذ جداول UTF-7 بأنفسكم. تُرجع المدخلات غير الصالحة invalid_input ولا تُحاسب، مما يبقي التحقق رخيصًا بينما تظل التحويلات الناجحة بسعر عنصر ثابت قدره $0.002.

أين يناسب UTF-7 في البريد والبوابات القديمة وتركيبات الاختبار

على هذه الصفحة يعمل كل شيء داخل متصفحكم؛ عبر API تكلف كل استعلام ناجح $0.002، ولا تُحاسب التحقق الفاشل، ولا يُخزَّن شيء بعد إعادة الاستجابة. هذا التقسيم — استكشاف تفاعلي مجاني وAPI مدفوعة مطابقة — يوافق بقية كتالوج KIT من المستوى A ويتيح الانتقال من عرض صفّي إلى مسار آلي دون تغيير النتيجة المرمّزة.

توليد تركيبات RFC 2152

أنتجوا سلاسل UTF-7 قابلة للتكرار لاختبارات الوحدة وملفات golden وفحوص التوافق مقابل أمثلة RFC.

كم يكلف مرمّز UTF-7؟

هو مجاني في متصفحكم على هذه الصفحة. عبر API يكلف الطلب الناجح $0.002؛ ولا تُحاسب المدخلات غير الصالحة.

ما الأوضاع المدعومة؟

mode=encode (الافتراضي) يحوّل النص الصريح إلى UTF-7. mode=decode يحوّل سلسلة UTF-7 إلى نص يونيكود.

اطّلع على توثيق KIT الكامل ←