YamlBox

الأسئلة المتداولة

أسئلة حولYamlBox0

كل شيء عن كيفية عمل الموقع، ثم الأسئلة والأجوبة التفصيلية لكل أداة على حدة.

عام

من يبني ويديرYamlBox0؟

YamlBox هو موقع مستقل لأدوات المطورين. لا يوجد حساب شركة لإنشاءه ولا فريق مبيعات - الأدوات موجودة لأن تحليل ملفات التكوين بشكل سيء يمثل إزعاجًا يوميًا، والقيام بذلك محليًا أسرع من القيام بذلك في أي مكان آخر.

كيف يمكنك كسب المال إذا كان كل شيء مجانيًا ولا يتم تتبع أي شيء؟

تم تصميم الموقع بتكلفة منخفضة عن عمد: يتم تقديم HTML ثابت من حافة Cloudflare، بدون تكلفة خادم لكل تحويل، لأن التحويلات تحدث في متصفحك. ستكون أي عملية تسييل مستقبلية مرئية وغير تدخلية، ولن نبيع البيانات مطلقًا، وهو ما لا يمكننا القيام به حتى لو أردنا ذلك.

هل يمكنني استخدام هذه الأدوات في العمل، على بيانات خاصة؟

هذا هو هدف التصميم. لا يتم نقل أو تخزين أو تسجيل أي شيء تلصقه، لذا فإن السؤال المعتاد "هل يمكنني لصق هذا في موقع ويب؟" السؤال لديه إجابة نظيفة. تحقق من سياستك الخاصة على أي حال - تتطلب بعض المؤسسات أدوات محلية بغض النظر عن البنية.

هل تعمل الأدوات دون الاتصال بالإنترنت؟

نعم بعد الزيارة الأولى. الصفحات ثابتة ويتم تخزينها مؤقتًا بواسطة متصفحك؛ يتم تشغيل رمز التحويل محليًا. يعد وضع الطائرة اختبارًا جيدًا تمامًا لمطالبة الخصوصية.

هل هناك API أو CLI؟

ليس بعد. يتم وضع الأدوات في المتصفح أولاً حسب التصميم، وستقوم واجهة برمجة التطبيقات (API) بنقل بياناتك إلى الخادم - وهو بالضبط ما يتجنبه هذا الموقع. بالنسبة لخطوط الأنابيب البرمجية، استخدم المكتبات الأساسية مفتوحة المصدر المذكورة في كل صفحة أداة.

لقد وجدت خطأ أو أداة مفقودة. كيف يمكنني الإبلاغ عنه؟

أرسل بريدًا إلكترونيًا إلى hello@yamlbox.com مع الإدخال الذي كسره - والمثال البسيط هو الذهب. نرحب أيضًا باقتراحات الأدوات المفقودة؛ بدأت العديد من الأدوات على هذا الموقع كطلبات.

أسئلة خاصة بالأداة

مجمعة حسب الأداة - انتقل إلى الصفحة الكاملة للحصول على أمثلة عملية.

YAML إلى JSON → أداة مفتوحة

هل تم تحميل YAML الخاص بي على الخادم؟

لا. يعمل المحول بالكامل في متصفحك باستخدام محلل مجمع. لا يغادر التكوين الخاص بك - بما في ذلك الأسرار الموجودة بداخله - جهازك أبدًا، وتعمل الأداة في وضع عدم الاتصال بعد تحميل الصفحة.

كيف يتم التعامل مع ملفات المستندات المتعددة؟

يتم تحليل المستندات المفصولة بـ --- بشكل فردي ودمجها في مصفوفة، كائن واحد لكل مستند. إذا كنت تريد المستند الأول فقط، فقم بتبديل خيار المستندات المتعددة إلى "المستند الأول فقط".

هل يدعم ملفات Kubernetes و docker-compose؟

نعم. يعمل أي إصدار YAML 1.2 صالح: بيانات Kubernetes، وdocker-compose.yml، وGitHub Actions، وخطوط أنابيب GitLab CI، وكتب التشغيل Ansible، ومواصفات OpenAPI، وملفات قيم Helm. يتم حل نقاط الارتساء والأسماء المستعارة التي تستخدمها قوالب Helm إلى قيمها النهائية.

لماذا فشل تحليل YAML الخاص بي؟

الأسباب الأكثر شيوعًا هي علامات التبويب المستخدمة للمسافات البادئة (يسمح YAML فقط بالمسافات)، أو فقدان النقطتين بعد المفتاح، أو وجود مفتاح مكرر في نفس التعيين. تعرض لوحة الخطأ الخط المخالف وتشير إلى العمود، مما يجعل المشكلة واضحة عادةً.

ماذا يحدث لتعليقات YAML؟

التعليقات غير موجودة بتنسيق JSON، لذا يتم حذفها. إذا كنت بحاجة إلى الحفاظ عليها، فاحتفظ بـ YAML كمصدر للحقيقة وتعامل مع JSON باعتباره قطعة أثرية للبناء.

هل يمكنني تحويل ملفات كبيرة جدًا؟

يتم تحويل الملفات التي يصل حجمها إلى بضعة ميغابايت بالمللي ثانية. تعتمد الملفات الكبيرة جدًا (عشرات الميجابايت) على ذاكرة جهازك؛ يتعامل معها متصفح سطح المكتب بشكل مريح حيث لا يمكن للهاتف ذلك.

JSON إلى YAML → أداة مفتوحة

لماذا تصبح القيمة "1.10" الخاصة بي 1.1 في YAML؟

لأنه كان رقمًا في المصدر JSON، ويعرض YAML الأرقام بشكل قانوني. إذا كانت القيمة عبارة عن إصدار أو معرف بشكل دلالي، فقم بتشغيل "علامات الاقتباس الإجبارية" بحيث تظل سلسلة في "2".

هل المفاتيح ذات النقاط أو الشرطات آمنة؟

نعم. يقتبس المولد أي مفتاح يمكن أن يربك المحلل اللغوي ويترك المفاتيح العادية بدون علامات اقتباس، بحيث يظل الإخراج قابلاً للقراءة ولكن لا لبس فيه.

هل يمكنني تحويل ملف JSON كبير إلى YAML؟

نعم - قم بلصقه أو إسقاط الملف في جزء الإدخال أو استخدام زر "ملف". تعتبر المستندات متعددة الميجابايت جيدة في متصفح سطح المكتب؛ يستغرق التحويل نفسه ميلي ثانية.

هل يحافظ الإخراج على ترتيب المفاتيح؟

افتراضيًا، نعم - تحتفظ المفاتيح بترتيب JSON الخاص بها. قم بتمكين "مفاتيح الفرز" عندما تريد ملفًا محددًا أبجديًا ينتج عنه اختلافات نظيفة في التحكم في الإصدار.

تنسيق JSON → أداة مفتوحة

ماذا يعني "الرمز المميز غير المتوقع"؟

ويعني ذلك أن المحلل اللغوي قد ضرب حرفًا لا يمكن أن يظهر في المكان الذي تم العثور عليه فيه - عادةً ما تكون فاصلة زائدة قبل قوس الإغلاق، أو علامات الاقتباس المفردة بدلاً من علامات الاقتباس المزدوجة، أو مفتاح غير مقتبس. يعرض هذا المنسق الخط والعمود حتى تتمكن من إصلاحه في ثوانٍ.

هل يقوم بالتحقق من صحة JSON أو مجرد تنسيقه؟

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

ما حجم الملف الذي يمكنه التعامل معه؟

يتم عرض الملفات التي يبلغ حجمها بضعة ميغابايت على الفور. بالنسبة للمستندات الكبيرة جدًا، تعد ذاكرة المتصفح هي الحد العملي وليس المنسق - حيث يتعامل الكمبيوتر المحمول النموذجي مع عشرات الميجابايت دون مشاكل.

هل يمكنني فرز المفاتيح أبجديًا؟

نعم - قم بتمكين "فرز المفاتيح" وسيتم فرز المفاتيح بشكل متكرر على كل مستوى. وهذا يجعل الملفات حتمية، لذا فإن فروق التحكم في الإصدار تظهر فقط التغييرات الحقيقية.

هل يتم إرسال JSON الخاص بي إلى أي مكان؟

أبداً. يتم تحليل كل شيء في علامة تبويب المتصفح الخاص بك. يمكنك حتى قطع الاتصال بالشبكة بعد تحميل الصفحة ويستمر المنسق في العمل.

٠الفرق → أداة مفتوحة

كيف يختلف هذا عن فرق النص؟

يؤدي اختلاف النص إلى مقارنة الأسطر، لذا فإن إعادة تنسيق المفاتيح أو إعادة ترتيبها تؤدي إلى حدوث ضوضاء. تقوم هذه الأداة بتوزيع كلا المستندين ومقارنة القيم حسب المسار، لذلك فهي تقوم فقط بالإبلاغ عن التغييرات الدلالية الحقيقية.

هل يكتشف عناصر المصفوفة المتغيرة؟

نعم — تتم مقارنة المصفوفات عنصرًا بعنصر. يتم الإبلاغ عن العنصر الموجود في مستند واحد وليس الآخر على أنه تمت إضافته أو إزالته في مسار مفهرس مثل $.users[2].

هل يمكن مقارنة JSON بترتيب مفاتيح مختلف؟

نعم. ترتيب المفاتيح غير ذي صلة لأنه يتم تحليل كلا الوثيقتين أولاً. {"a":1,"b":2} و{"b":2,"a":1} يمكن مقارنتهما بأنهما متطابقان.

هل يمكنني مقارنة الملفات أيضًا؟

قم بتحويلهما أولاً باستخدام محول YAML إلى JSON في علامة تبويب أخرى، ثم قم بلصق مخرجات JSON هنا. نظرًا لأن الفرق هيكلي، فإن تحويل YAML إلى JSON أولاً لا يؤثر على النتيجة.

JSON إلى مخطط JSON → أداة مفتوحة

ما مدى دقة استنتاج المخطط؟

الأنواع والبنية دقيقة بالنسبة للعينة التي تقدمها. ما لا يمكن للاستدلال معرفته هو قواعد العمل — أن العمر يجب أن يكون موجبًا، أو أن الحقل عبارة عن تعداد. تعامل مع المخرجات كنقطة بداية قوية وأضف القيود يدويًا.

كيف يتم التعامل مع المصفوفات ذات أشكال العناصر المختلفة؟

يتم دمج مخططات العناصر: تصبح الخصائص الموجودة في كل عنصر مطلوبة، وتظل الخصائص الموجودة في بعض العناصر فقط اختيارية. تنتج اختلافات النوع اتحادًا مثل النوع: ["string"، "number"].

هل يجب أن أختار مسودة 07 أم 2020-12؟

اختر Draft-07 إذا كان برنامج التحقق الخاص بك هو AJV 6/7، أو المحررين الأقدم، أو أي شيء لم يتم تحديثه مؤخرًا - فهو يتمتع بأكبر قدر من الدعم وهو ما تتوقعه معظم أدوات OpenAPI 3.0. اختر 2020-12 للمشاريع الجديدة وAJV 8.

أين يمكنني استخدام المخطط الذي تم إنشاؤه؟

AJV وأدوات التحقق الأخرى لفحوصات وقت التشغيل، وVS Code للإكمال التلقائي والتحقق من صحة ملفاتك، ومواصفات OpenAPI لتوثيق الاستجابات، وخطوط أنابيب CI التي تفشل عندما تنحرف الاستجابة عن العقد.

JSON إلى TypeScript → أداة مفتوحة

كيف يتم اكتشاف الحقول الاختيارية؟

عندما يكون الإدخال عبارة عن مصفوفة من الكائنات، يتم فحص كل خاصية عبر كل عنصر. يتم وضع علامة على المفتاح المفقود من بعض العناصر كاختياري، وتظل المفاتيح الموجودة في كل مكان مطلوبة.

كيف تصبح الحقول الفارغة أنواعًا؟

يتم التعامل مع القيمة الخالية كنوع خاص بها، لذلك يتم كتابة الحقل الذي يكون في بعض الأحيان عبارة عن سلسلة وأحيانًا خالية سلسلة | null — نوع صادق وليس كذبة يثق بها مترجمك.

الواجهات أو كتابة الأسماء المستعارة - ما الذي يجب أن أختاره؟

الواجهات هي الاصطلاح الأكثر شيوعًا وتندمج بشكل جيد في الإعلانات؛ اكتب الأسماء المستعارة للقراءة بشكل أفضل بالنسبة للاتحادات والتقاطعات. من الناحية الوظيفية، بالنسبة لأشكال البيانات التي تم إنشاؤها، فإن أيًا منهما يعمل - قم بمطابقة قاعدة التعليمات البرمجية الموجودة لديك.

هل يمكنه إنشاء Zod أو مخططات وقت التشغيل الأخرى؟

ليس مباشرة. قم بإنشاء مخطط JSON من نفس الحمولة واشتقاق أداة التحقق، أو اكتب مخطط Zod يدويًا واستخدم هذه الواجهات للجانب الثابت. تصف الأنواع الشكل في وقت الترجمة؛ تقوم أدوات التحقق من الصحة بحمايتك في وقت التشغيل.

هل يعمل هذا مع الاستجابات الكبيرة؟

نعم. قم بلصق أو إسقاط الملف JSON - يتم استنتاج التداخل بشكل متكرر. الحمولات الكبيرة جدًا محدودة بذاكرة المتصفح بدلاً من المولد نفسه.

JSON للذهاب → أداة مفتوحة

لماذا تصبح بعض الحقول مؤشرات؟

لا يمكن تخزين قيمة فارغة في سلسلة عادية أو int، لذلك يحصل الحقل الذي لا قيمة له على مؤشر (*string، *int). يتيح ذلك للتشفير/json التمييز بين "الغائب" و"الحاضر ولكن لاغٍ" دون فشل، وهو بالضبط الغرض من أنواع المؤشرات.

ماذا يحدث عندما يحتوي الحقل على أنواع مختلطة؟

إذا كانت القيمة عبارة عن سلسلة في عنصر واحد ورقم في عنصر آخر، فإن المولد يستخدم أيًا بدلاً من اختراع نوع ملموس خاطئ. يمكنك بعد ذلك اتخاذ قرار بشأن UnmarshalJSON المخصص إذا كان API فضفاضًا بالفعل.

هل تتضمن العلامات التي تم إنشاؤها حذفًا فارغًا؟

فقط للحقول التي كانت مفقودة من عنصر واحد على الأقل في العينة الخاصة بك. تحصل الحقول المطلوبة على علامات عادية، لذا لا يؤدي التعثر ذهابًا وإيابًا إلى إسقاط البيانات.

هل الناتج متوافق مع gofmt؟

نعم - تتبع علامات التبويب والمحاذاة والترتيب الميداني اصطلاحات الحكومة. قم بتشغيل gofmt -l بعد اللصق ويجب ألا يبلغ عن أي تغييرات.

هل يمكنني إنشاء بنيات للاستجابات الكبيرة؟

نعم. تصبح الكائنات المتداخلة بنيات مسماة منفصلة بينما يكون ركوب الدراجات مستحيلًا في التحليل JSON، لذلك حتى الحمولات المتداخلة بعمق تولد مجموعة مسطحة وقابلة للقراءة من الأنواع.

JSON إلى SQL → أداة مفتوحة

كيف يتم اختيار أنواع الأعمدة؟

يتم فحص كل عمود عبر جميع الصفوف. تصبح جميع الأعداد الصحيحة INTEGER/INT، وأي رقم عشري يصبح NUMERIC/DOUBLE، والقيم المنطقية تصبح BOOLEAN، والسلاسل ذات المظهر JSON تصبح TIMESTAMPTZ، والكائنات أو المصفوفات المتداخلة تصبح JSONB/JSON/TEXT اعتمادًا على اللهجة.

هل المنتج SQL الذي تم إنشاؤه آمن للتشغيل؟

إنه برنامج نصي عادي يحتوي على سلسلة حرفية تم تجاوزها بشكل صحيح، لذا فهو آمن كنقطة بداية. قم بمراجعته قبل التشغيل على الإنتاج: قد تحتاج إلى مفاتيح أساسية وفهارس وقيود NOT NULL ومفاتيح خارجية لا يستطيع المولد استنتاجها.

ماذا عن الكائنات المتداخلة؟

وتصبح عمودًا JSON/JSONB/TEXT واحدًا يحمل القيمة المتداخلة. تعد النمذجة العلائقية للهياكل المتداخلة قرارًا تصميميًا، لذا لا يستطيع المولد تخمين الروابط نيابةً عنك.

أي لهجة يجب أن أختار؟

PostgreSQL إذا كنت تريد JSONB وTIMESTAMPTZ، وMySQL لأعمدة JSON ذات الأرقام المزدوجة، وSQLite لقواعد البيانات والاختبارات القائمة على الملفات. هيكل النص متطابق. تتغير أسماء الكتابة والقيم الحرفية المنطقية فقط.

CSV إلى JSON → أداة مفتوحة

لماذا يجب أن يبقى "007" سلسلة؟

تعتبر الأصفار البادئة مهمة في المعرفات مثل الرموز البريدية ورموز المنتجات وأرقام الهواتف. وبالتالي، يتم إيقاف تشغيل النوع افتراضيًا؛ قم بتمكينه فقط عندما يكون كل عمود ذو مظهر رقمي رقميًا بالفعل.

كيف يتم التعامل مع الحقول المقتبسة التي تحتوي على فواصل؟

صحيح - المحلل اللغوي يتبع RFC 4180، لذا فإن "Hopper, PhD" هو حقل واحد، وليس حقلين. لا يتم إلغاء علامات الاقتباس المزدوجة المضمنة، ويتم الاحتفاظ بالقيم المقتبسة متعددة الأسطر.

هل يمكنني تحويل أوروبي مفصول بفاصلة منقوطة CSV؟

نعم. يتم اكتشاف المحددات تلقائيًا من السطر الأول، ويمكنك تجاوز الاختيار بشكل صريح في شريط الخيارات.

ما هو إخراج الخطوط؟

خطوط JSON (كائن JSON واحد لكل سطر) هو التنسيق الذي تتوقعه معظم أدوات البيانات ومعالجات السجلات وخطوط أنابيب LLM. كما أنه يتدفق بشكل أفضل: يمكن معالجة كل سطر بشكل مستقل.

هل هناك حد للصف؟

لا يوجد حد مصطنع - الملفات الكبيرة جدًا تكون محصورة فقط بذاكرة المتصفح الخاص بك. يمكن تحويل 50 ميجا بايت بشكل مريح على جهاز كمبيوتر محمول نموذجي.

JSON إلى CSV → أداة مفتوحة

ماذا يحدث للكائنات المتداخلة؟

وقد تم تسويتها بعلامة نقطية، لذا يصبح {"customer":{"name": Ada"}} هو العمود customer.name. لا يمكن تسوية المصفوفات المتداخلة بشكل ذي معنى ويتم تسلسلها كـ JSON داخل الخلية.

لماذا تحتوي بعض الصفوف على عدد أكبر من الأعمدة؟

قائمة الأعمدة هي اتحاد كافة المفاتيح عبر كافة السجلات. يؤدي المفتاح المفقود إلى إنشاء خلية فارغة، مما يحافظ على محاذاة كل صف لنفس الرأس.

هل يستطيع Excel فتح الملف مباشرة؟

نعم. الإخراج هو معيار RFC 4180 -0 مع تشفير UTF-8. في Excel، استخدم البيانات → من النص/CSV إذا كان النقر المزدوج يفسد الترميز في الإصدارات الأقدم.

هل يمكنني تحويل خطوط JSON إلى CSV؟

نعم - يتم تحليل كل سطر كسجل واحد، لذلك ينتج إدخال JSONL نفس الجدول كمصفوفة مكافئة.

XML إلى JSON → أداة مفتوحة

لماذا تبدأ السمات بـ @؟

XML يسمح بسمة وعنصر فرعي بنفس الاسم، والذي لا يمكن التعبير عنه بمفتاح واحد. تحافظ البادئة @ على السمات المميزة عن العناصر، لذلك لا يتم فقدان أي شيء أثناء التحويل.

كيف يتم التعامل مع العناصر المتكررة؟

عندما تظهر نفس العلامة أكثر من مرة بين الأشقاء، تصبح القيم مصفوفة JSON. يظل الحدث الفردي عددًا أو كائنًا - ولهذا السبب يجب على المستهلكين تحمل كليهما، أو لماذا يجب عليك التطبيع في التعليمات البرمجية الخاصة بك.

هل يدعم مساحات الأسماء؟

نعم. تحتفظ العناصر ذات مسافة الأسماء بأسمائها المحلية، ويتم الحفاظ على تصادمات البادئات كما هو مكتوب في المصدر. إذا كنت بحاجة إلى الدقة الكاملة لمساحة الاسم، فاحتفظ بملف XML الأصلي إلى جانب JSON.

هل يمكنه تحويل استجابات SOAP؟

نعم - يتم تحويل المغلف والجسم مثل أي XML آخر. بالنسبة لـ SOAP، استمر في تمكين الإرسال حتى تصل الحقول الرقمية كأرقام بدلاً من سلاسل.

إكسل إلى JSON → أداة مفتوحة

هل تم تحميل جدول البيانات الخاص بي إلى الخادم؟

لا، يتم تحليل ملف .xlsx بواسطة JavaScript في علامة تبويب المتصفح لديك باستخدام قارئ مُجمَّع. فهو لا يترك جهازك أبدًا، مما يجعل الأداة آمنة بالنسبة لبيانات الموارد البشرية والتمويل والعملاء.

ما هي تنسيقات Excel المدعومة؟

.xlsx (Excel 2007 والإصدارات الأحدث) و.csv. التنسيق الثنائي القديم .xls غير مدعوم — افتحه في Excel واحفظه بتنسيق .xlsx أو .csv أولاً.

كيف يتم التعامل مع الصيغ؟

يتم استخدام القيم المخزنة مؤقتًا بواسطة Excel. إذا تم حفظ ملف باستخدام صيغ ولكن بدون نتائج مخزنة مؤقتًا - وهو أمر نادر ولكنه ممكن - فقد تظهر هذه الخلايا فارغة. تؤدي إعادة الحفظ في Excel إلى تحديث ذاكرة التخزين المؤقت.

ماذا يحدث للتواريخ؟

يقوم Excel بتخزين التواريخ كأرقام تسلسلية؛ يقوم القارئ بتحويلها إلى تواريخ JavaScript ويصدر سلاسل ISO، لذلك يصل "2025-03-14" كنص بدلاً من 45730.

SRT إلى VTT → أداة مفتوحة

لماذا يحتاج فيديو HTML5 إلى WebVTT بدلاً من SRT؟

ينفذ عنصر <track> وكل مشغل متصفح رئيسي مواصفات WebVTT. SRT هو تنسيق قديم من أدوات البث — عادةً ما يقوم اللاعبون الذين يقبلونه بالتحويل داخليًا بشكل غير كامل.

هل تم تحميل ترجماتي؟

لا. التحويل عبارة عن تحويل نص من جانب العميل. لا يغادر المحتوى السري أو الذي لم يتم نشره المتصفح أبدًا، وهو غالبًا ما يكون متطلبًا تعاقديًا للاستوديوهات.

ماذا يحدث لأرقام إشارة SRT؟

لا يتطلبها WebVTT، وهي اختيارية. بشكل افتراضي، تتم إعادة ترقيم الإشارات بالتسلسل؛ يمكنك إيقاف تشغيل الترقيم بالكامل.

هل يحتفظ بالعلامات الغامقة والمائلة؟

نعم — علامات SRT <b>/<i>/<u> صالحة لـ WebVTT ويتم الاحتفاظ بها. يتم تجريد تجاوزات تحديد المواقع على نمط {an8} الخاصة بـ SRT، نظرًا لأن WebVTT يعبر عن تحديد المواقع بشكل مختلف.

هل يمكن إصلاح ملفات الترجمة المشوهة؟

إنه يتسامح مع المراوغات المعتادة في العالم الحقيقي: أو أو. بالمللي ثانية، ساعات مكونة من رقم واحد، مع عدم وجود أسطر فارغة بين الإشارات ذات الرموز الزمنية الصالحة. تحصل الملفات المعطلة حقًا على خطأ واضح بدلاً من الفساد الصامت.

وحدة فك ترميز JWT → أداة مفتوحة

هل من الآمن لصق JWT في موقع ويب؟

باستخدام هذه الأداة، نعم بالنسبة للرمز المميز نفسه - فك التشفير هو جافا سكريبت خالص في متصفحك ولا يتم إرسال أي شيء إلى أي مكان. لكن تعامل مع الرموز المميزة باعتبارها أسرارًا بغض النظر: إن JWT عبارة عن بيانات اعتماد لحاملها، وهي صالحة لمن يحتفظ بها حتى انتهاء صلاحيتها. بالنسبة لرموز الإنتاج، يفضل فك التشفير محليًا في مصحح الأخطاء الخاص بك.

هل هذا يؤكد صحة التوقيع؟

لا، ولا أي وحدة فك ترميز بدون مفتاحك السري أو العام. يقوم فك تشفير base64url فقط بفك تشفير المقاطع. يتطلب التحقق مفتاح التوقيع وينتمي إلى الواجهة الخلفية لديك أو إلى مكتبة مثل jose أو jsonwebtoken.

لماذا تم رفض الرمز المميز الخاص بي على الرغم من أن فك التشفير يعمل؟

الأسباب المعتادة هي: انتهاء مطالبة exp، أو إصدار الرمز المميز لجمهور مختلف (aud) أو جهة إصدار (iss)، أو اختلاف ساعة الخادم بما يكفي لسحب nbf إلى المستقبل، أو تم تدوير مفتاح التوقيع. تجيب لجنة المطالبات على الأسئلة الثلاثة الأولى على الفور.

ماذا يعني iat وexp وnbf؟

يتم إصدار iat، وexp هو وقت انتهاء الصلاحية، وnbf ليس قبل. الثلاثة كلها عبارة عن طوابع زمنية لنظام Unix بالثواني. يكون الرمز صالحًا عندما يكون nbf ≥ now < exp (عند وجود هذه المطالبات).

هل يمكنني تعديل رمز مميز لاختبار عمليات التحقق من الأدوار؟

يمكنك تحرير الحمولة، لكن التوقيع لن يتطابق بعد الآن، وبالتالي فإن أي خادم يتحقق من التوقيعات سوف يرفضها - بشكل صحيح -. للاختبار، قم بإعادة التوقيع باستخدام المفتاح الموجود في بيئتك؛ هذه هي الطريقة الوحيدة لاختبار مسارات المصادقة بأمانة.

محول الطابع الزمني → أداة مفتوحة

كيف يمكنني معرفة الثواني من المللي ثانية؟

من حيث الحجم: تبلغ ثانية العصر اليوم 10 أرقام (1735689600)، والملي ثانية 13 (1735689600000). يطبق المحول هذه القاعدة، ويحترم أيضًا الكسور العشرية الصريحة - يتم التعامل مع 1735689600.5 على أنها ثواني بها جزء كسري.

ما الفرق بين UTC والإخراج المحلي؟

كلاهما يصف نفس اللحظة. التوقيت العالمي المنسق (UTC) لا يعتمد على المنطقة الزمنية — آمن دائمًا للتخزين والسجلات. يُظهر Local ما تعرضه ساعة جهازك، باستخدام المنطقة الزمنية للمتصفح، وهو ما يدركه المستخدم.

لماذا تبدو الطوابع الزمنية الخاصة بي متباعدة بالساعات؟

دائمًا ما يكون خطأ في المنطقة الزمنية وليس خطأ في الطابع الزمني: قيمة تم إنشاؤها باستخدام محلل التوقيت المحلي ولكن تتم قراءتها كـ UTC (أو العكس). قارن بين UTC والصفوف المحلية هنا - إذا كانت تختلف حسب إزاحة UTC، فهذا هو السبب.

هل يمكنني تحويل التواريخ قبل عام 1970؟

نعم. الطوابع الزمنية السالبة لنظام Unix صالحة وتمثل تواريخ ما قبل العصر؛ يقوم المحول بمعالجتها ويقوم أيضًا بتوزيع سلاسل التاريخ التاريخية.

ماذا عن Y2038؟

يؤثر تجاوز العدد الصحيح الموقّع 32 بت في الساعة 03:14:07 بالتوقيت العالمي المنسق في 19 يناير 2038 على الأنظمة القديمة التي تخزن الطوابع الزمنية كـ int32. في JavaScript، لا تتأثر هذه الأداة — ولا تخضع لها الممارسة الحالية للتخزين 64 بت أو المللي ثانية.

أداة تشفير / فك ترميز URL → أداة مفتوحة

encodeURI مقابل encodeURIComponent - ما الذي أحتاجه؟

استخدم encodeURIComponent للقيمة التي تضعها داخل معلمة استعلام (?q=...): فهي تفلت من &، =، ?، / و# بحيث لا يمكن للقيمة كسر بنية URL. استخدم encodeURI للحصول على URL كاملاً تريد الاحتفاظ به كما هو، والذي يترك :، / و ؟ وحيد.

لماذا تصبح المسافة %20 أو +؟

في المسار أو الجزء، يجب أن تكون المسافة %20. في application/x-www-form-urlencoded data — نص نموذج HTML الكلاسيكي — تكون المساحة +. يعامل محلل الاستعلام هنا + كمسافة، وهو السلوك الصحيح للسلاسل المشفرة بالنموذج.

لماذا يتم تشفير URL الخاص بي بشكل مزدوج؟

لأنه تم ترميزه مرتين - غالبًا ما يكون إطار عمل يشفر قيمة مشفرة بالفعل. فك التشفير مرة واحدة هنا؛ إذا كانت النتيجة لا تزال تحتوي على %-sequences، فقم بفك التشفير مرة أخرى، ثم قم بإصلاح خط الأنابيب بحيث يتم تشفيره مرة واحدة بالضبط.

هل يتعامل مع الأحرف غير اللاتينية؟

نعم. يتم ترميز النص بتنسيق UTF-8 بايت ثم يتم تجاوز النسبة المئوية، لذلك تنتج جميع اللغات اليابانية والعربية والسيريلية والرموز التعبيرية عناوين URL صحيحة وقابلة للتشغيل المتبادل.

التشفير/فك التشفير Base64 → أداة مفتوحة

هل تشفير Base64؟

رقم Base64 هو تشفير وليس تشفير - ليس له مفتاح ولا يوفر أي سرية. تعامل مع البيانات المشفرة بـ 1 كنص عادي يبدو مشوشًا فقط. استخدم التشفير (TLS، AES، العمر) عند الحاجة إلى السرية.

لماذا يكون Base64 أحيانًا آمنًا لعنوان URL مع - و_؟

يستخدم Base64 القياسي + و/، وهو ما يمثل مشكلة داخل عناوين URL والمعرفات. يستبدل المتغير الآمن لعنوان URL (RFC 4648 §5) - و _ وغالبًا ما يحذف = الحشو، بحيث تظل القيمة موجودة في سلسلة استعلام أو اسم ملف.

كيف يمكنني فك تشفير Base64 إلى ملف أو صورة؟

تقوم هذه الأداة بفك التشفير إلى نص، وهو مناسب لحمولات النص. إذا كانت وحدات البايت التي تم فك تشفيرها عبارة عن صورة أو أرشيف، فإن وحدة فك الترميز هذه تقوم بالإبلاغ بوضوح بدلاً من طباعة البيانات المهملة - استخدم أداة تحويل البايتات إلى ملف لهؤلاء.

لماذا تنتهي سلسلتي Base64 بـ = أو ==؟

حشوة. Base64 يشفر 3 بايت إلى 4 أحرف؛ عندما لا يكون طول الإدخال مضاعفًا للثلاثة، فإن منصات التشفير تحتوي على = للحفاظ على اكتمال الكتلة. غالبًا ما تكون الحشوة اختيارية ويتم إزالتها في الاستخدام الآمن.

الضفيرة لجلبها → أداة مفتوحة

هل رمز الجلب الذي تم إنشاؤه جاهز للإنتاج؟

ترجمة الطلب دقيقة — حيث تتطابق الطريقة وعنوان URL والرؤوس والنص مع ما سيرسله الضفيرة. ما يجب عليك إضافته قبل الشحن: معالجة الأخطاء (تحقق من Response.ok)، والمهلات باستخدام AbortController، وإعادة محاولة المنطق للمكالمات غير الفعالة.

أين ذهبت علامة -k / --insecure الخاصة بي؟

تمت الإشارة إليه في تعليق بدلاً من ترجمته، لأن جلب العقدة يتحقق من TLS افتراضيًا وتعطيل ذلك في التعليمات البرمجية هو قرار أمني. إصلاح الشهادة بدلاً من ذلك؛ إذا كنت في حاجة إليها حقًا، فقم بتعيين NODE_TLS_REJECT_UNAUTHORIZED=0 في بيئة سهلة الاستخدام فقط.

كيف يتم التعامل مع المصادقة الأساسية؟

-u user:pass يصبح التفويض: الرأس الأساسي مع بيانات الاعتماد المشفرة بواسطة Base64، وهو بالضبط ما يرسله الضفيرة. تفضل الرموز المميزة على المصادقة الأساسية حيث تدعمها واجهة برمجة التطبيقات.

هل يمكنه التعامل مع --المضغوط وإعادة التوجيه؟

يكون الضغط شفافًا عند الجلب، لذا فإن --compressed لا يحتاج إلى أي تعليمات برمجية. يتم اتباع عمليات إعادة التوجيه بشكل افتراضي في عملية الجلب، ومطابقة الضفيرة مع -L؛ إذا كنت بحاجة إلى معالجة إعادة التوجيه يدويًا، فاضبط إعادة التوجيه: "يدوي".

لماذا يفشل أمر الضفيرة الخاص بي في التحليل؟

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

Markdown مولد الجدول → أداة مفتوحة

لماذا تتم محاذاة الجدول بدلاً من استخدام الحد الأدنى Markdown؟

لأن ملفات README تتم قراءتها في شكل أولي على الأقل بقدر ما تتم قراءتها في النموذج المعروض - في المحررات والاختلافات والمحطات الطرفية. تجعل الأعمدة المبطنة المصدر قابلاً للقراءة، وتتجاهل العارضات المسافات الزائدة.

هل يمكنني تحويل جدول Markdown مرة أخرى إلى CSV؟

نعم - الصق الجدول؛ يتم التعرف على المدخلات المحددة بشُرط رأسية ويتم تخطي الصف الفاصل الموجود، بحيث يمكنك استعادة البيانات دون التنسيق.

هل يهرب من الأنابيب الموجودة داخل الخلايا؟

نعم، مع شرطة مائلة عكسية (\|)، وهي طريقة الهروب Markdown القياسية بنكهة GitHub. بدونها، سيؤدي توجيه الإخراج في القيمة إلى تقسيم الصف إلى أعمدة إضافية بصمت.

ما هي المنصات التي يعمل عليها الإخراج؟

GitHub، وGitLab، وBitbucket، وObsidian، وNotion (عبر اللصق)، وJira، ومعظم مولدات المواقع الثابتة، وأي عارض CommonMark مع دعم الجدول. GitHub Flavoured Markdown هو المعيار الفعلي هنا.