بعد از این درس چه کاری میتوانی انجام بدهی؟
- Middleware قبل یا بعد handler کار مشترک انجام میدهد و باید یا پاسخ بدهد یا next را دقیقاً یکبار صدا بزند.
- نمونه را اجرا کنی و نتیجه را پیش از تغییر حدس بزنی
- یک تغییر کوچک بدهی و اثرش را در مرورگر توضیح بدهی
- خطای این درس را با DevTools یا اعتبارسنج پیدا و اصلاح کنی
اگر نتیجه عجیب بود، اول همان عنصر را در DevTools انتخاب کن؛ ساختار و قانونهای واقعاً اعمالشده از حدسزدن سریعتر راه را نشان میدهند.
چرا مهم است؟ Middleware قبل یا بعد handler کار مشترک انجام میدهد و باید یا پاسخ بدهد یا next را دقیقاً یکبار صدا بزند.
اولین تمرین تو: اطلاعات حساس body را وارد log نکن و یک تست header بنویس. پیش از تازهکردن صفحه، نتیجه را در یک جمله حدس بزن و بعد حدست را با مرورگر مقایسه کن.
از یک مثال کوچک شروع کن
Middleware قبل یا بعد handler کار مشترک انجام میدهد و باید یا پاسخ بدهد یا next را دقیقاً یکبار صدا بزند. نمونه کوتاه زیر را در فایل «src/middleware/request-context.js» بنویس و صفحه را تازه کن. بعد از دیدن نتیجه، سراغ تغییر پیشنهادی برو؛ هدف حفظکردن نشانهها نیست، باید بفهمی کدام خط چه اثری روی صفحه گذاشت.
۱. نمونه را خودت تایپ کن
فایل را ذخیره کن و نتیجه را با انتظار این درس مقایسه کن.
۲. تغییر درس را انجام بده
اطلاعات حساس body را وارد log نکن و یک تست header بنویس.
۳. خطا را عمداً ببین
فراموشکردن next درخواست را معلق و صدا زدن آن پس از response باعث handler اضافه میشود. سپس DevTools یا HTML Validator را باز کن و فقط همان علت را اصلاح کن.
اگر نتیجه عجیب بود، اول همان عنصر را در DevTools انتخاب کن؛ ساختار و قانونهای واقعاً اعمالشده از حدسزدن سریعتر راه را نشان میدهند.
سه قطعهای که باید بفهمی
Middleware؛ کار مشترک در یک نقطه
Middleware قبل یا بعد handler کار مشترک انجام میدهد و باید یا پاسخ بدهد یا next را دقیقاً یکبار صدا بزند.
نتیجه قابل مشاهده
هر پاسخ header شناسه دارد و پس از پایان یک log زماندار ثبت میشود.
نشانه خطا
فراموشکردن next درخواست را معلق و صدا زدن آن پس از response باعث handler اضافه میشود.
هر route زمان پاسخ و شناسه درخواست را جدا ثبت میکند.
فرض کن هر route زمان پاسخ و شناسه درخواست را جدا ثبت میکند. صفحه باز میشود، اما هنوز این بخش برای کاربر درست و قابل فهم نیست. در این درس فقط همان قسمت را میسازیم تا رابطه کد و نتیجه گم نشود.
قطعهها را به ترتیب درست بچین
روی هر قطعه بزن تا وارد پاسخ شود؛ برای برگرداندن دوباره روی آن بزن. با دکمههای جابهجایی هم میتوانی بدون کشیدن و رهاکردن ترتیب را اصلاح کنی.
بررسی ساختار تمرین
این صفحه کامپایلر کامل Node.js نیست؛ ساختار تمرین را صادقانه بررسی میکند و خروجی مورد انتظار را نشان میدهد. برای اجرای کامل به محیط رسمی همان زبان نیاز است.
یک بخش را تغییر بده و دکمه بررسی را بزن.
راهنماییها مرحلهای هستند؛ اول خودت پیام خطا را بخوان.
اطلاعات حساس body را وارد log نکن و یک تست header بنویس. پیش از تازهکردن صفحه، نتیجه را در یک جمله حدس بزن و بعد حدست را با مرورگر مقایسه کن.
این سه اشتباه را انجام نده
فراموشکردن next درخواست را معلق و صدا زدن آن پس از response باعث handler اضافه میشود.
تغییر چند بخش همزمان و نامشخصشدن علت نتیجه
اعتماد به ظاهر یک اندازه صفحه و بررسینکردن موبایل یا صفحهکلید
با 5 سؤال مطمئن شو که مفهوم را گرفتهای
در این درس چه چیزی باید در مرورگر دیده شود؟
چرا فقط یک بخش را تغییر میدهیم؟
اولین سرنخ خطای این درس چیست؟
بعد از تغییر کد چه کاری مفید است؟
چه زمانی آماده درس بعدی هستی؟
فهمیدی، تغییر دادی، نتیجه را توضیح دادی؟
فقط در این صورت درس را کامل کن و سراغ مرحله بعد برو.