3.8 KiB
3.8 KiB
id | title | localeTitle | challengeType |
---|---|---|---|
587d7fb2367417b2b2512bf7 | Use body-parser to Parse POST Requests | استخدام محلل body to Parse POST الطلبات | 2 |
Description
POST /path/subpath HTTP/1.0كما ترى ، يتم تشفير الجسم مثل سلسلة الاستعلام. هذا هو التنسيق الافتراضي المستخدم في نماذج HTML. مع Ajax يمكننا أيضا استخدام JSON لتكون قادرة على التعامل مع البيانات التي لديها بنية أكثر تعقيدا. هناك أيضًا نوع آخر من الترميز: multipart / form-data. هذا واحد يستخدم لتحميل الملفات الثنائية. في هذا التمرين ، سنستخدم هيئة urlencoded. لتحليل البيانات الواردة من طلبات POST ، يجب عليك تثبيت حزمة: محلل الجسم. تتيح لك هذه الحزمة استخدام سلسلة من البرامج الوسيطة ، والتي يمكن أن تفك شفرة البيانات بتنسيقات مختلفة. شاهد المستندات هنا . قم بتثبيت وحدة تحليل الجسم في الحزمة. json. ثم تطلب ذلك في الجزء العلوي من الملف. قم بتخزينه في متغير اسمه bodyParser. يتم إرجاع الوسيطة لمعالجة البيانات المشفرة بواسطة
From: john@example.com
User-Agent: someBrowser/1.0
Content-Type: application/x-www-form-urlencoded
Content-Length: 20
name=John+Doe&age=25
bodyParser.urlencoded({extended: false})
. extended=false
هو خيار تكوين يخبر المحلل باستخدام التشفير التقليدي. عند استخدامه ، يمكن أن تكون القيم سلاسل أو صفائف فقط. النسخة الموسعة تسمح بمرونة أكبر للبيانات ، ولكن يفوقها JSON. تمرير إلى app.use()
الدالة التي تم إرجاعها بواسطة استدعاء الأسلوب السابق. كالعادة ، يجب تركيب الوسيطة قبل كل الطرق التي تحتاجها.
Instructions
Tests
tests:
- text: يجب تركيب الوسيطة 'body-parser'
testString: 'getUserInput => $.get(getUserInput(''url'') + ''/_api/add-body-parser'').then(data => { assert.isAbove(data.mountedAt, 0, ''"body-parser" is not mounted correctly'') }, xhr => { throw new Error(xhr.responseText); })'
Challenge Seed
Solution
// solution required