
در دنیای توسعه وب، کدهای وضعیت HTTP نقش مهمی در برقراری ارتباط وضعیت درخواستهای وب بین مشتریان و سرورها دارند. این کدها بخشی از پروتکل HTTP هستند و برای نشان دادن اینکه آیا یک درخواست با موفقیت انجام شده است یا خیر استفاده می شود. در میان بسیاری از کدهای وضعیت HTTP، کد وضعیت 420 اضافه شده نسبتا جدیدی است که به طور گسترده مورد استفاده قرار نمی گیرد. در این مقاله به تعریف کد وضعیت 420، کاربرد آن و روش های مقابله با آن می پردازیم.
تعریف
کد وضعیت 420 یک کد وضعیت غیر رسمی است که در استاندارد HTTP گنجانده نشده است. این به عنوان یک شوخی توسط جامعه وب ارائه شد. از قضا، 420 یا 20 آوریل، روزی است که با فرهنگ حشیش مرتبط است (ممکن است کد پلیس 420 برای کشیدن حشیش باشد!). به این ترتیب، کد وضعیت 420 به عنوان کد وضعیت “آرامش خود را بهبود بخشید” یا کد وضعیت “قوری” نیز شناخته می شود.
تعریف رسمی کد وضعیت 420 “روش ناموفق” است. این بدان معناست که روش استفاده شده در درخواست مانند GET، POST، PUT یا DELETE با موفقیت کامل نشده است. با این حال، علت دقیق خرابی در خود کد وضعیت مشخص نشده است. در عوض، سرور ممکن است برای ارائه جزئیات بیشتر، اطلاعات اضافی را در بدنه پاسخ یا سرصفحه ها قرار دهد.
اگر از Spring Framework ارسال شده باشد، نشان میدهد که روش ناموفق است، اما اگر از توییتر ارسال شده باشد، نشان میدهد که سرعت مشتری برای درخواستهای بیش از حد محدود است.
استفاده
از آنجایی که کد وضعیت 420 یک کد وضعیت رسمی نیست، در سیستم های تولیدی کاربرد زیادی ندارد. با این حال، میتوان آن را در زمینههای خاصی، مانند محیطهای آزمایشی یا توسعه، یا در شرایطی که یک برنامه وب میخواهد مقداری طنز را به پیامهای خطای خود تزریق کند، استفاده شود.
یک نمونه از استفاده از کد وضعیت 420 در API پلتفرم رسانه اجتماعی توییتر است. توییتر دارای محدودیت نرخ درخواست API است که برای جلوگیری از سوء استفاده و اطمینان از پایدار ماندن پلت فرم طراحی شده است. زمانی که کاربر از حد مجاز سرعت فراتر رود، توییتر کد وضعیت 420 را با پیام «آرامش خود را بهبود بخشید» برمی گرداند. این یک راه بازیگوش برای اطلاع دادن به کاربر است که باید سرعت خود را کاهش دهد و استراحت کند.
نمونه دیگری از استفاده از کد وضعیت 420 در ابزار مدیریت برنامه تحت وب cPanel است. هنگامی که کاربر سعی می کند به یک صفحه وب که در پیکربندی به عنوان “قوری” مشخص شده است دسترسی پیدا کند، cPanel یک کد وضعیت 420 را با پیام “من یک قوری هستم” برمی گرداند. این یک اشاره به شوخی اصلی است که الهام بخش ایجاد کد وضعیت است.
مواد و روش ها
هنگام برخورد با کد وضعیت 420، چندین روش وجود دارد که توسعه دهندگان وب می توانند از آنها برای ارائه پاسخی معنادار به مشتریان استفاده کنند. در اینجا برخی از روش هایی که می توان استفاده کرد آورده شده است:
1. صفحات خطای سفارشی
یکی از رایجترین روشهای مدیریت کد وضعیت 420، ایجاد صفحات خطای سفارشی است. صفحات خطای سفارشی را می توان به گونه ای طراحی کرد که اطلاعات بیشتری در مورد اشتباه و نحوه رفع آن به کاربر ارائه دهد. همچنین می توان از آنها برای تزریق مقداری شوخ طبعی به پیام خطا استفاده کرد که می تواند به کاهش خلق و خو و کاهش ناامیدی کمک کند.
2. ثبت خطا
ثبت خطا روش دیگری است که می تواند برای کنترل کد وضعیت 420 استفاده شود. ثبت خطا شامل ثبت جزئیات خطا، از جمله روش درخواست، URL، و هر گونه اطلاعات اضافی است که ممکن است در تشخیص مشکل مفید باشد. سپس می توان از این اطلاعات برای رفع مشکل و جلوگیری از تکرار آن در آینده استفاده کرد.
3. مکانیسم ها را دوباره امتحان کنید
اگر دلیل کد وضعیت 420 مربوط به محدودیت نرخ یا سایر مسائل مشابه باشد، می توان از مکانیسم های امتحان مجدد برای رسیدگی به خطا استفاده کرد. مکانیسم های تلاش مجدد شامل امتحان مجدد درخواست پس از سپری شدن مدت زمان معینی است. این می تواند به طور خودکار توسط مشتری یا با ارائه دکمه ای برای تکرار درخواست کاربر به صورت دستی انجام شود.
4. پاسخ به خطاها