کدهای HTTP Status

یکی از مهم ترین کتابخانه های زبان برنامه نویسی پایتون python کتابخونه ی Request هست. که بعدا دوست دارم راجبش مفصل صحبت کنیم...

اما برای استفاده از کتابخونه ی Request پایتون در برنامه نویسی باید حتما Status code هارو بلد باشیم :)


(صرف نظر از برنامه نویسی برای SEO ، اطلاعات عمومی و خیلی چیزای دیگه مهمه!)

بخام خیلی خلاصه به زبان آدمیزاد ( نه برنامه نویسی و حرفه ای ) و ساده بگم میشه این !

  • Informational responses (100–199)
  • Successful responses (200–299)
  • Redirects (300–399)
  • Client errors (400–499)
  • Server errors (500–599)

ترجمه؟ میشه این!

  • پاسخ های اطلاع رسانی (199-100)
  • پاسخ های موفقیت آمیز (299-200)
  • پیام های انتقالی (399-300)
  • خطای سمت استفاده کننده ((یعنی منو شما که سایت رو میبینیم)) (499-400)
  • خطاهای سمت سرور(599-500)

حالا بیایم دونه دونه به این Status Code ها بپردازیم: (خیلی خلاصه و مفید)


سری کد های (100-199) در پایتون :

کد 100 : Continue

سرور درخواست اول رو دریافت کرده و متنظر درخواست بعدی هست.

کد 101: Switching protocol

سرور درخواست تغییر پروتکل رو از درخواست کننده پذیرفته.

کد 102: Processing

این یعنی سرور درخواست رو دریافت کرده اما همچنان در حال پردازشه و حال نداره جواب بده!


سری کد های (200-299) در پایتون :

کد 200: OK

اسمش روشه! OK ، یعنی درخواست با موفقیت انجام شده

کد 201: Created

درخواست موفقیت آمیز بوده و سرور یک صفحه جدید ایجاد کرده

کد 202: Accepted

درخواست ارسالی از سمت سرور دریافت شده ولی هنوز عملیاتی روی درخواست صورت نگرفته.(سرور میفهمه ولی متوجه نمیشه. D:)

کد 204: No Content

سرور درخواست رو با موفقیت پردازش کرده ولی هیچ محتوایی برگردانده نشده

سری کد های (399-300) در پایتون :

کد 300: Multiple Choice

برای درخواست ارسالی ، چند پاسخ مختلف وجود دارد که کاربر میتونه یکی از اون هارو انتخاب کنه

کد 301: Moved Permanently

آدرس درخواستی بطور کامل تغییر پیدا کرده و آدرس جدید در پاسخ ارسال میشه

کد 302: Found

آدرس درخواستی به صورت موقت تغییر پیدا کرده.


سری کد های (499-400) در پایتون :

کد 400: Bad request

بدلیل اشتباه بودن اطلاعات ارسالی از سمت کلاینت ، سرور نمیتونه درخواست رو بفهمه ( اینجا که نه میفهمه نه متوجه میشه.)

کد 401: Unauthorized

کاربر درخواست دسترسی به صفحه ای رو داره که اجازه دسترسی به اون رو نداره (برای مثال : یک کاربر اجازه دسترسی به پنل ادمین رو نداره)

کد 402: Payment Required

یعنی پول زور وده! یعنی نیاز به حساب کاربری خاصی (پولی) داری تا بتونی به این صفحه دسترسی پیدا بکنی

کد 403: Forbidden

یعنی باز هم کاربر اجازه دسترسی به صفحه رو نداره! حالا فرقش با 401 چی هست؟ اینجاست: بذار اینجوری مثال بزنم ما یه سایت داریم که یک نویسنده داره و یک مدیر، نویسنده دسترسی محدودی به سایت داره برای مثال نمیتونه تغییری تو قالب سایت ایجاد کنه ولی مدیر میتونه اینکار رو انجام بده. حالا اگر نویسنده بخواد تغییری توی قالب اون سایت ایجاد کنه با کد 403 مواجه میشه.


کد 404: Not Found

سرور قادر به پیدا کردن صفحه درخواست شده نمی‌باشد. یعنی اگر صفحه‌ای که درخواست کردیم در سرور وجود نداشته باشه، سرور کد 404 رو نمایش می‌ده.


سری کد (599-500) در پایتون :

کد 500: Internal server error

سرور با خطا مواجه شده و قادر به انجام درخواست نیست.

کد 502: Bad Gateway

سرور مثل یه درگاه عمل میکنه و باید انتقال میداده به سرور بالاتر اما از سرور بالاتر Error دریافت کرده. (دانشجو ها موقع انتخاب واحد خیلی خوب با این کد آشنایی دارن)

کد 503: Service unavailable

سرور در حال حاضر در دسترس نیست. (نمیدونه چه بلایی سر ما اومده و ما اینجا داریم زحمت میکیشم!)

کد 504: Gateway Timeout

دوباره سرور مثل یه درگاه عمل میکنه و باید انتقال میداده به سرور مادر(سرور بالاتر) ولی سرور مادر اصلا پاسخی بهش نداده.

خب مرسی تا اینجا خوندی! Status codes خیلی بیشتر از اینا هستند اما بیشترین و رایج ترین کد هایی که ممکنه باهاشون مواجه بشیم اینان.


در کل بحث برنامه نویسی پایتون سمت سرور خیلی جالبه ولی اگر زبان برنامه نویسی پایتون رو سمت سرور استفاده نکردید دوره ی آموزش پروژه محور پایتون استاد نیکزاد رو ببینید که با فریمورک فلسک هست و یک سایت کامل توش پیاده سازی میشه.