קודי מצב HTTP
חיפוש לפי מספר או לפי שם. מה כל קוד אומר ומתי להשתמש בו.
- פועל בדפדפן שלך — הטקסט שלך לא נשלח לשום מקום
- בלי הרשמה, בלי מכסות, חינם לשימוש בלי הגבלה
איך זה עובד
רוב קודי המצב מובנים מאליהם, וקומץ מהם באמת מבלבל — במיוחד אלה שנשמעים דומים. אפשר להקליד מספר, מילה כמו forbidden, או 4xx כדי לראות מחלקה שלמה.
401 ו-403, הזוג שכולם מערבבים
401 Unauthorized פירושו למעשה לא מאומת: השרת אינו יודע מי אתם, ושליחת פרטי הזדהות עשויה לפתור את העניין. 403 Forbidden פירושו שהוא יודע בדיוק מי אתם ועדיין אסור לכם. השמות היסטוריים ואינם מועילים; ההבחנה חשובה כי אחד מזמין התחברות והשני לא.
301 לעומת 302, ולמה זה חשוב ל-SEO
301 הוא קבוע ומעביר את אותות הדירוג לכתובת החדשה. 302 הוא זמני ומשאיר אותם בכתובת המקורית. שימוש ב-302 להעברה קבועה הוא טעות נפוצה ויקרה בשקט. 307 ו-308 הם המקבילים המודרניים שמבטיחים בנוסף שהשיטה לא תשתנה — POST נשאר POST, מה ש-301 ו-302 לא עשו היסטורית.
422 לאימות
400 Bad Request פירושו שהשרת לא הצליח להבין את הבקשה כלל. 422 Unprocessable Content פירושו שהוא הבין אותה היטב והתוכן שגוי — שדה חסר, אימייל לא תקין. רוב ממשקי ה-API צריכים להחזיר 422 בכשלי אימות, ומחזירים 400 מתוך הרגל.
המחלקות
1xx מידע, 2xx הצלחה, 3xx הפניה, 4xx אשמת הלקוח, 5xx אשמת השרת. החלוקה האחרונה היא זו שכדאי להיעזר בה כשמחלקים אשמה באירוע: זינוק ב-4xx אומר שהקוראים עושים משהו לא נכון, זינוק ב-5xx אומר שהבעיה אצלכם.
418
I'm a teapot, מבדיחת אחד באפריל ב-1998, שעברה תקינה ברצינות לאחר שניסיון להסיר אותה מהמימושים עורר סערה. אין לה שימוש אמיתי, והיא חלק אמיתי מהמפרט.
קודי מצב HTTP — שאלות
מה ההבדל בין 401 ל-403?
401 פירושו לא מאומת — השרת אינו יודע מי אתם. 403 פירושו שהוא יודע, ועדיין אין לכם הרשאה.
לבחור ב-301 או ב-302?
301 להעברה קבועה, שמעבירה את הדירוג. 302 להעברה זמנית. יש להשתמש ב-308 וב-307 אם אסור ששיטת ה-HTTP תשתנה.
איזה קוד להחזיר על שגיאת אימות?
422 Unprocessable Content. 400 פירושו שהבקשה לא הובנה כלל.
האם 418 אמיתי?
כן. הוא התחיל כבדיחת אחד באפריל ב-1998 ואכן עבר תקינה, אם כי לא לשימוש אמיתי.
מה פירוש 502?
שרת proxy קיבל תשובה לא תקינה מהשרת שמאחוריו — בדרך כלל האפליקציה כבויה או קורסת.