تحويل JSON إلى Query String

تعطيك سلسلة جاهزة لإضافتها بعد ? في الرابط أو لإرسالها كجسم form، مع نسخة مقروءة دون ترميز للمراجعة.

جارٍ تحميل الأداة…

المعالجة والخصوصية: تُحسب النتيجة داخل متصفحك ولا تُرسل بياناتك إلى أي خادم.

طريقة الاستخدام

  1. أدخل نص JSON وطريقة المصفوفات.
  2. تظهر النتيجة فورًا وتتحدّث مع كل تعديل.
  3. انسخ النتيجة، أو انسخ رابطًا يحفظ القيم نفسها لمشاركتها.

طريقة الحساب

كل قيمة تصبح زوج key=value، والكائن المتداخل يكتب parent[child]=value. المصفوفات حسب اختيارك: a=1&a=2 أو a[]=1 أو a[0]=1 أو a=1,2. الترميز يتبع application/x-www-form-urlencoded: المسافة تصبح + وكل رمز خارج A-Z و a-z و 0-9 و * - . _ يرمز %XX لبايتات UTF-8.

مثال

المدخلات: طريقة المصفوفات = تكرار a=1&a=2. النتيجة: Query string مرمز: q=%D8%B9%D8%B7%D9%88%D8%B1&page=2&tags=new&tags=sale&filter%5Bbrand%5D=Oud&filter%5BinStock%5D=true، عدد المعاملات: 6.

{
  "q": "عطور",
  "page": 2,
  "tags": ["new", "sale"],
  "filter": { "brand": "Oud", "inStock": true }
}
q=%D8%B9%D8%B7%D9%88%D8%B1&page=2&tags=new&tags=sale&filter%5Bbrand%5D=Oud&filter%5BinStock%5D=true

الحدود والملاحظات

  • null يصبح قيمة فارغة و true يصبح النص true، لأن الروابط لا تحمل أنواعا.
  • المصفوفات والكائنات الفارغة لا تنتج أي معامل.

أسئلة شائعة عن هذه الأداة

أي طريقة مصفوفات أختار؟

التكرار a=1&a=2 شائع في أغلب الخوادم، والأقواس a[]=1 تناسب PHP و Rails، والفاصلة تناسب واجهات API التي تطلب قائمة مفصولة بفواصل.

لماذا تظهر الأقواس بالشكل %5B و %5D؟

لأن الترميز القياسي يرمز الأقواس. الخوادم تفكها تلقائيا، والنسخة المقروءة تعرضها دون ترميز.

هل تستخدم الأداة + أم %20 للمسافة؟

تستخدم + كما يفعل URLSearchParams والنماذج في المتصفح، وكلاهما يفك إلى مسافة في معاملات الاستعلام.