ForHosting KIT · قراءة المواقع ومراقبتها

تحليل سلسلة استعلام URL إلى كائن مفتاح وقيمة

تحوّل هذه الأداة عنوان URL مطلقًا وكاملًا أو سلسلة استعلام خام إلى كائن منظّم من المفاتيح والقيم.

● Betaمجاني · داخل متصفحك
استخدمها من الويبAPIالبريدTelegramالتطبيق قريبًا

وهي تفك تسلسلات الترميز المئوي وعلامات الجمع المستخدمة في النماذج، وتحفظ القيم الفارغة، وتجمع المعاملات المتكررة في مصفوفات وفق ترتيب ورودها. إذا كان التسلسل معيبًا أو كانت UTF-8 غير صالحة، تُرجع خطأ واضحًا بدل استبدال المحارف بصمت. يمكنكم فحص رابط في المتصفح، أو استدعاء API حتمية بسعر $0.002 لكل عنصر من التطبيقات والاختبارات ومسارات استيراد البيانات التي تحتاج إلى النتيجة نفسها في كل مرة.

اختاروا صيغة الإدخال الملائمة للمصدر

يمكنكم إرسال عنوان URL مطلق وكامل مثل <code>https://example.com/search?q=red+shoes</code>، أو استعلام خام مثل <code>q=red+shoes&amp;page=2</code>، أو الاستعلام نفسه مسبوقًا بعلامة استفهام. عند إدخال عنوان مطلق، لا تُحلّل إلا مكوّنات الاستعلام؛ فلا يتحول المخطط أو جهة العنوان أو المسار أو الجزء المرجعي إلى حقول. أما عنوان URL الذي لا يحتوي على استعلام فينتج كائن معاملات فارغًا. ويُعامل الإدخال الخام كله كبيانات استعلام بعد حذف علامة الاستفهام الأولى إن وُجدت. تفيد هذه الصيغة عندما يكون إطار عمل أو سجل وصول أو webhook أو API في المتصفح قد فصل الاستعلام عن بقية العنوان مسبقًا. تبدأ كل علامة عطف زوجًا جديدًا، وتفصل أول علامة مساواة الاسم عن قيمته. ويُحفظ الاسم الذي لا تتبعه علامة مساواة بقيمة فارغة، شأنه شأن الاسم الذي أُسندت إليه قيمة فارغة صراحة. أما الأجزاء الفارغة بين علامات العطف المتتالية فتُهمل. تعرض النتيجة أيضًا عدد المفاتيح المختلفة وعدد الأزواج التي حُلّلت، وبذلك يمكنكم تمييز الحقول المتكررة من الأسماء الفريدة من دون إعادة عد خصائص الكائن يدويًا.

تعرّفوا إلى فك الترميز ومعالجة المفاتيح المتكررة

تُفك أسماء المعاملات وقيمها كلٌّ على حدة وفق القواعد الشائعة لنماذج استعلامات URL. تتحول علامة الجمع إلى مسافة، بينما تُفسّر تسلسلات <code>%HH</code> على أنها بايتات UTF-8. لذلك ينتج عن <code>city=San+Jos%C3%A9</code> نص Unicode مقروء، ويبقى الفاصل المرمّز مثل <code>%26</code> داخل قيمة واحدة بدل اعتباره بداية لحقل آخر. تُجرى عملية فك الترميز مرة واحدة فقط؛ إذ يتحول <code>%2520</code> إلى <code>%20</code> لا إلى مسافة. عندما يظهر المفتاح مرة واحدة تكون قيمته سلسلة نصية. وإذا ظهر المفتاح نفسه بعد فك ترميزه مرة أخرى، تصبح قيمته مصفوفة تضم جميع مرات الظهور بترتيبها في المصدر. تمثل هذه القاعدة مجموعات مربعات الاختيار والمرشحات والوسوم وعناصر الاختيار المتعدد من دون إهدار المعلومات أو اختراع خصائص مرقمة. يُحدّد التكرار بعد فك الترميز، ولذلك تُجمع الصيغ المرمّزة المتكافئة للاسم نفسه. وتظل القيم الفارغة المتكررة محفوظة أيضًا. لا تستنتج الأداة القيم المنطقية أو الأعداد أو التواريخ، ولا تفسر صيغة الأقواس على أنها كائنات متداخلة. تبقى جميع القيم المفردة سلاسل نصية كي يطبّق النظام اللاحق التحويل الخاص بمجاله بصورة مقصودة وواضحة.

أوقفوا البيانات التالفة قبل دخولها إلى مسار العمل

قد تُبقي أدوات التحليل المتساهلة علامة نسبة مئوية منفردة، أو تقبل تسلسلًا من رقم واحد، أو تضع محرفًا بديلًا عندما لا تكوّن البايتات المرمّزة UTF-8 صالحة. تجعل هذه السلوكيات المعرّفات التالفة تبدو قابلة للاستخدام، وقد تنشئ فروقًا يصعب تتبعها بين المتصفح والخادم وإجراء التحقق من التوقيع. تتحقق هذه القدرة من أن كل علامة نسبة مئوية تتبعها خانتان سداسيتا عشريًا بالضبط، ثم تتحقق من أن كل تسلسل بايتات مفكوك يمثل UTF-8 صالحة. إذا أخفق أي شرط، يعيد الطلب خطأ إدخال غير صالح بدل كائن جزئي. تعمل الأداة بصورة خالصة وحتمية؛ فلا تتصل بالشبكة، ولا تتبع إعادة توجيه، ولا تقرأ الساعة، ولا تستخدم العشوائية، ولا تحتفظ بحالة بين الاستدعاءات. تعاملوا مع السلاسل الناتجة بوصفها بيانات، لا بوصفها HTML أو شيفرة أو مسارات ملفات أو تعبيرات قواعد بيانات موثوقة؛ ففك الترميز يستعيد المحارف لكنه لا يجعل استخدامها اللاحق آمنًا تلقائيًا. في الأتمتة، تبلغ كلفة API مقدار $0.002 لكل عنصر، ويمكن استعمالها خطوة تطبيع ثابتة قبل التحقق أو التوجيه أو المقارنة أو التخزين. وفي المتصفح تتيح المنطق نفسه لفحص الروابط المنسوخة سريعًا من دون الاتصال بوجهتها.

فحص عنوان URL منسوخ

حوّلوا عنوانًا طويلًا لبحث أو حملة أو رد نداء إلى حقول مقروءة من دون فتح الوجهة أو الاتصال بها.

تطبيع إدخال webhook

حلّلوا استعلامًا خامًا قبل تطبيق قواعد التحقق الخاصة بالتطبيق، مع الاحتفاظ بجميع قيم المعاملات المتكررة.

إنشاء بيانات اختبار حتمية

تحققوا بدقة من فك الترميز والقيم الفارغة والمفاتيح المتكررة في اختبارات التكامل ومسارات استيراد البيانات.

ما كلفة طلب API؟

تبلغ كلفة كل عنصر محلّل $0.002 عبر API. وتستخدم أداة المتصفح التفاعلية منطق التحليل الحتمي نفسه.

ماذا يحدث إذا ظهر المفتاح أكثر من مرة؟

ينتج عن الظهور مرة واحدة قيمة نصية. وعند التكرار تصبح القيمة مصفوفة تضم جميع القيم بترتيبها الأصلي.

هل تتحول علامات الجمع إلى مسافات؟

نعم. تمثل علامة الجمع مسافة في ترميز النماذج الشائع. استخدموا %2B عندما ينبغي الاحتفاظ بعلامة جمع حرفية.

هل تستنتج الأداة الأعداد أو القيم المنطقية؟

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

ما أخطاء الترميز المئوي التي تُرفض؟

تُرفض علامة النسبة المئوية التي لا تتبعها خانتان سداسيتا عشريًا، وتسلسلات البايتات التي لا تكوّن UTF-8 صالحة.

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

POSThttps://api.kit.forhosting.com/web/query-string-parse

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

curl -X POST https://api.kit.forhosting.com/web/query-string-parse \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"https://example.com/search?q=red+shoes&tag=sale&tag=new&empty="}'
{
  "text": "https://example.com/search?q=red+shoes&tag=sale&tag=new&empty="
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "web.query_string_parse",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

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

لكل طلب$0.002

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

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

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