1 00:00:00,000 --> 00:00:05,950 2 00:00:05,950 --> 00:00:09,310 >> דובר: בואו נדבר על עוד protocol-- העברת Hypertext 3 00:00:09,310 --> 00:00:12,060 פרוטוקול, או HTTP. 4 00:00:12,060 --> 00:00:15,074 אז דברנו על IP וTCP בסרטונים קודמים. 5 00:00:15,074 --> 00:00:17,240 ואלו הם פרוטוקולים המכתיבים כיצד מידע 6 00:00:17,240 --> 00:00:20,970 מהלכים ממכונה למכונה ו מתכנית לתכנית או שירות 7 00:00:20,970 --> 00:00:27,720 שירות באמצעות האינטרנט, באמצעות רשת זו של נתבים ומכונות. 8 00:00:27,720 --> 00:00:30,640 >> אבל זה בדרך כלל לא את התמונה כולה, נכון? 9 00:00:30,640 --> 00:00:33,530 בדרך כלל כאשר אנו שולחים מידע, התכנית 10 00:00:33,530 --> 00:00:36,570 עצמו-- כאשר הנתונים הוא קיבל, נניח, למשל, 11 00:00:36,570 --> 00:00:44,270 בדוא"ל דרך יציאת TCP 25 או בקשת דף אינטרנט דרך יציאת 80, 12 00:00:44,270 --> 00:00:48,220 יש בדרך כלל מערכת של כללים שיש לעבד את מה שקבלתי זה עתה. 13 00:00:48,220 --> 00:00:51,960 וHTTP הוא דוגמא רק פרוטוקול כזה. 14 00:00:51,960 --> 00:00:54,929 >> HTTP הוא רק פרוטוקול שכבת יישום 15 00:00:54,929 --> 00:00:56,220 שאנחנו הולכים לדבר עליו. 16 00:00:56,220 --> 00:00:59,660 אבל זה עוד סט של כללים מכתיבים כיצד 17 00:00:59,660 --> 00:01:02,790 מידע הוא להיות משודר ומעובד באמצעות האינטרנט. 18 00:01:02,790 --> 00:01:06,390 בפרט, HTTP מציין בדיוק איך 19 00:01:06,390 --> 00:01:11,300 יש להגיש בקשה ל דף אינטרנט ואיך בדיוק 20 00:01:11,300 --> 00:01:15,160 שרת, מכונה שמארח דפי אינטרנט, 21 00:01:15,160 --> 00:01:17,840 מספק מידע ש לגבות ללקוחות. 22 00:01:17,840 --> 00:01:20,010 >> אז פרוטוקול זה לא למעשה יש משהו 23 00:01:20,010 --> 00:01:22,270 לעשות עם כמה מידע מהלכים מנקודה 24 00:01:22,270 --> 00:01:26,090 'לנקודה זה באמת המערכת של כללים 25 00:01:26,090 --> 00:01:29,700 for-- זה בעצם את הכללים אירוסין לעבודה עם דף אינטרנט, 26 00:01:29,700 --> 00:01:31,960 דומה כאשר מישהו גלי ידם עליך, 27 00:01:31,960 --> 00:01:33,410 אתה אמור לנופף בחזרה. 28 00:01:33,410 --> 00:01:36,280 זה סוג של פרוטוקול אנושי קונבנציונלי. 29 00:01:36,280 --> 00:01:39,610 פרוטוקול HTTP רק אומר, אם אתה רוצה לבקש אינטרנט 30 00:01:39,610 --> 00:01:42,730 דף, לוודא מראה הפורמט שלך כמו זה-- סוג של עיצוב כמו 31 00:01:42,730 --> 00:01:44,930 מכתב עסקי, למשל. 32 00:01:44,930 --> 00:01:50,029 ובאופן דומה תהיה התגובה מגיע על פי פרוטוקול זה. 33 00:01:50,029 --> 00:01:51,820 יש אחרים פרוטוקולי שכבת יישום 34 00:01:51,820 --> 00:01:53,380 כי אנחנו לא הולכים ל לדבר על קטעי וידאו. 35 00:01:53,380 --> 00:01:55,790 אבל אלה כוללים דברים כמו פרוטוקול העברת קבצים, 36 00:01:55,790 --> 00:01:59,200 פרוטוקול העברת דואר האלקטרוני ל שליחת הודעות דוא"ל, הפצת נתונים 37 00:01:59,200 --> 00:02:02,100 שירות, שולחן עבודה מרוחק פרוטוקול, RDP, ש 38 00:02:02,100 --> 00:02:05,590 משמש אם אתה רוצה לגשת מרחוק המחשב ממחשב אחר, 39 00:02:05,590 --> 00:02:08,479 XMPP, אשר לעתים קרובות ידוע כג'אבר או צ'אט, 40 00:02:08,479 --> 00:02:11,160 אז זה הפרוטוקול לשימוש בשירותי צ'אט. 41 00:02:11,160 --> 00:02:13,310 ויש הרבה, הרבה, הרבה אחרים. 42 00:02:13,310 --> 00:02:15,900 >> אז בכל פעם שאתה משתמש ב שירות, השירות 43 00:02:15,900 --> 00:02:18,930 מצפה מידע להיות received-- בקשה 44 00:02:18,930 --> 00:02:21,010 להיות received-- ב פורמט מסוים מאוד 45 00:02:21,010 --> 00:02:24,070 ונדרש לחזור מידע בחזרה 46 00:02:24,070 --> 00:02:27,190 בפורמט מסוים מאוד גם כן. 47 00:02:27,190 --> 00:02:31,750 >> אז בואו נחזור לאיור שלנו שלנו רוצים לדבר לאינטרנט. 48 00:02:31,750 --> 00:02:34,810 אז אנחנו שמחים, ואנחנו רוצים ללכת לcats.com, נכון? 49 00:02:34,810 --> 00:02:38,550 אז אם אנחנו מדברים רק לcats.com, אפשר לומר משהו כמו היי, 50 00:02:38,550 --> 00:02:39,720 אני יכול לראות את דף הבית שלך? 51 00:02:39,720 --> 00:02:42,320 וcats.com כנראה יהיה להגיב, כן, בטח. 52 00:02:42,320 --> 00:02:43,440 הנה לך. 53 00:02:43,440 --> 00:02:46,440 אז זה סוג אדם של תשאל ותשובות. 54 00:02:46,440 --> 00:02:47,980 >> מה שנראה כמו בHTTP? 55 00:02:47,980 --> 00:02:51,340 ובכן, זה בעצם סוג של מתרגם די נקי למשהו כזה. 56 00:02:51,340 --> 00:02:57,290 אפשר לומר GET / HTTP / 1.1 מcats.com המארח. 57 00:02:57,290 --> 00:03:03,039 אז בעצם מה שאני עושה כאן הוא מבקש www.cats.com/ דף האינטרנט. 58 00:03:03,039 --> 00:03:05,330 אנחנו בדרך כלל להשמיט את הקו הנטוי בימינו, אבל זה היית רק 59 00:03:05,330 --> 00:03:07,200 אומר בדף הבית של cats.com. 60 00:03:07,200 --> 00:03:11,910 >> אה, ודרך אגב, אני הולך להיות באמצעות גרסת HTTP 61 00:03:11,910 --> 00:03:14,182 1.1 לתקשר איתך. 62 00:03:14,182 --> 00:03:16,390 זה סוג של אנלוגי ל אומר, כמו, אגב, 63 00:03:16,390 --> 00:03:17,870 אני הולך להיות דוברי בצרפתית, או אגב, 64 00:03:17,870 --> 00:03:19,370 אני הולך להיות מדבר באנגלית. 65 00:03:19,370 --> 00:03:22,160 זה פשוט הפורמט של הפרוטוקול. 66 00:03:22,160 --> 00:03:25,050 זה גם 1.0, שהוא לא נפוץ יותר. 67 00:03:25,050 --> 00:03:30,615 אז אני מדבר HTTP 1.1, ו אני רוצה www.cats.com/. 68 00:03:30,615 --> 00:03:31,710 בבקשה לקבל את זה בשבילי. 69 00:03:31,710 --> 00:03:34,610 >> ואז יש מידע אחר, too-- הנקודה, הנקודה, נקודה שם, 70 00:03:34,610 --> 00:03:38,234 שהוא מידע על שאתה כל כך cats.com 71 00:03:38,234 --> 00:03:39,400 היה יודע לאן לשלוח אותו. 72 00:03:39,400 --> 00:03:41,480 אבל אלה הם שני סוג של חלקים קריטיים 73 00:03:41,480 --> 00:03:44,000 בהתחלה של HTTP request-- 74 00:03:44,000 --> 00:03:46,770 בדיוק כמו כשאתה מתחיל מכתב שאתה אומר, יקירים, ריק. 75 00:03:46,770 --> 00:03:49,710 זה דומה מאוד ברוחו לזה. 76 00:03:49,710 --> 00:03:52,370 >> ואם cats.com הולך אומר, אה, בטח, הנה לך. 77 00:03:52,370 --> 00:03:55,590 הם עלולים להגיב כמו זה-- אני גם להגיב. 78 00:03:55,590 --> 00:03:57,960 אני מדבר גם HTTP 1.1. 79 00:03:57,960 --> 00:04:01,720 בקשתך תאושר, 200 על אישור. 80 00:04:01,720 --> 00:04:04,709 מה אתה עומד מקבל הוא HTML ולאחר מכן 81 00:04:04,709 --> 00:04:06,250 נקודה, נקודה, נקודה קצת מידע נוסף. 82 00:04:06,250 --> 00:04:10,620 ובתחתית בקשה היא למעשה HTML, 83 00:04:10,620 --> 00:04:16,339 שפת הסימון, תוכן של דף הבית של cats.com. 84 00:04:16,339 --> 00:04:21,227 >> אז HTTP / 1.1-- אני מכיר הבקשה התקבלה דרך HTTP 1.1. 85 00:04:21,227 --> 00:04:22,310 בקשתך אושרה. 86 00:04:22,310 --> 00:04:25,810 אני יכול לתת לך את מה שאתה רוצה, 200 על אישור. 87 00:04:25,810 --> 00:04:27,440 אתה עומד לקבל HTML. 88 00:04:27,440 --> 00:04:30,450 ואז הנה HTML שביקשת. 89 00:04:30,450 --> 00:04:33,930 >> אבל לפעמים הבקשות שלנו לא תמיד הולכים די על פי תכנית. 90 00:04:33,930 --> 00:04:37,100 האם אני יכול לראות את דף cats.html שלך? 91 00:04:37,100 --> 00:04:40,366 ובכן, מה אם הם אומרים, אנחנו אין לי דף cats.html, 92 00:04:40,366 --> 00:04:42,740 שנראה קצת לא מציאותי בגלל שהם cats.com. 93 00:04:42,740 --> 00:04:44,400 אפשר היה לחשוב שיהיה להם cats.html. 94 00:04:44,400 --> 00:04:45,420 אבל בסדר. 95 00:04:45,420 --> 00:04:48,484 אז זה סוג של אינטראקציה אנושית קונבנציונלית 96 00:04:48,484 --> 00:04:49,650 עכשיו היו לנו עם cats.com. 97 00:04:49,650 --> 00:04:51,060 איך זה לתרגם? 98 00:04:51,060 --> 00:04:52,726 >> זה יכול להיות משהו מוכר לך. 99 00:04:52,726 --> 00:04:55,690 הבקשה שלנו נראתה בדיוק אותו הדבר, למעט במקום קו נטוי מקבל 100 00:04:55,690 --> 00:04:58,110 עכשיו אנחנו מקבלים cats.html. 101 00:04:58,110 --> 00:05:01,810 אז עכשיו מה בעצם כל זה בקשה אומרת שנותן לי בבקשה 102 00:05:01,810 --> 00:05:05,620 www.cats.com/cats.html. 103 00:05:05,620 --> 00:05:08,700 אז המארח והאמצע חלק מזה שורה העליונה 104 00:05:08,700 --> 00:05:14,632 יש לציין במדויק מה דף אני מבקש. 105 00:05:14,632 --> 00:05:17,590 אבל cats.com במקרה זה לא הולך כדי להיות מסוגל להגיב באופן חיובי. 106 00:05:17,590 --> 00:05:19,089 הם לא יודעים שאנחנו מדברים על. 107 00:05:19,089 --> 00:05:25,170 ואז זה משהו שאולי יש לך HTTP before-- ראה 1.1 404 לא נמצא. 108 00:05:25,170 --> 00:05:27,180 לא הצליח למצוא את מה ש אתה מבקש. 109 00:05:27,180 --> 00:05:30,460 אגב, אני הולך לתת לך בחזרה כמה HTML, ובדרך כלל שHTML 110 00:05:30,460 --> 00:05:32,351 הוא התוכן של חלק 404 דף. 111 00:05:32,351 --> 00:05:34,100 ובמקרה של cats.com, זה כנראה 112 00:05:34,100 --> 00:05:37,720 כמה חתולים חמודים בסל עם פנים 404 עצובים לידם, 113 00:05:37,720 --> 00:05:40,920 בגלל שאתה הולך להיות עצוב כשאתה לא מקבל דף 114 00:05:40,920 --> 00:05:43,040 שאתה מחפש. 115 00:05:43,040 --> 00:05:48,520 >> זה סוג של היסודות של מה פרוטוקול, בקשות פרוטוקול HTTP 116 00:05:48,520 --> 00:05:49,180 נראה כמו. 117 00:05:49,180 --> 00:05:52,640 הם באמת דומים לאופן בו אנו יגרום אינטראקציה דומה 118 00:05:52,640 --> 00:05:55,460 באמנות רק אנושיות לבקש משהו 119 00:05:55,460 --> 00:05:58,250 ומקבל אותו בחזרה או כתיבה מכתב ומצפה לתגובה 120 00:05:58,250 --> 00:06:00,380 מכתב בפורמט מסוים. 121 00:06:00,380 --> 00:06:03,910 זה פחות או יותר מה ש HTTP הוא רק canonicalizing 122 00:06:03,910 --> 00:06:10,190 לכל המכשירים שרוצים גישה דפי אינטרנט, העברות היפרטקסט. 123 00:06:10,190 --> 00:06:15,110 >> אז קו של הצורה, זה גרסת HTTP יעד בקשת שיטה, 124 00:06:15,110 --> 00:06:17,100 נקרא קו בקשת HTTP. 125 00:06:17,100 --> 00:06:23,740 זה בדרך כלל הדבר הראשון שהוא מועבר כחלק מבקשת HTTP 126 00:06:23,740 --> 00:06:26,180 או אם אתה שואל לHTTP. 127 00:06:26,180 --> 00:06:29,970 זה קצת כמו, כמו שאמרתי, אמר יקר, ריק בראש המכתב שלך. 128 00:06:29,970 --> 00:06:32,880 הם יודעים שאתה כתיבה להם מכתב. 129 00:06:32,880 --> 00:06:34,796 אז זה דומה מאוד לאומר, אני יודע 130 00:06:34,796 --> 00:06:37,670 שהם עושים בקשת HTTP וזה פורמט המסוים 131 00:06:37,670 --> 00:06:39,090 הם מבקשים. 132 00:06:39,090 --> 00:06:43,810 >> גרסת HTTP היא כנראה תמיד הולך להיות HTTP / 1/1. 133 00:06:43,810 --> 00:06:46,670 גם 1.0 קיים, אך הוא לא באמת השתמש יותר. 134 00:06:46,670 --> 00:06:49,200 לצורך CS50, מקבל הוא כנראה תמיד 135 00:06:49,200 --> 00:06:51,540 מה שאתה הולך להיות משתמש כאשר אתה בעצם 136 00:06:51,540 --> 00:06:54,250 מה שהופך את בקשות HTTP ישירות. 137 00:06:54,250 --> 00:06:57,720 אבל POST הוא עוד אפשרות שאנחנו לא הולך לדבר על עכשיו. 138 00:06:57,720 --> 00:07:02,980 ולאחר מכן בקשה-היעד הוא מה דף בשרת של המארח 139 00:07:02,980 --> 00:07:05,812 אתה הייתי רוצה לקבל. 140 00:07:05,812 --> 00:07:08,020 כפי שאמרתי, ששם מארח היא בשורה נפרדת, בדרך כלל 141 00:07:08,020 --> 00:07:10,350 הקו השני של הבקשה הכוללת. 142 00:07:10,350 --> 00:07:13,660 וכך יחדיו, המארח שם ויעד הבקשה 143 00:07:13,660 --> 00:07:16,070 לציין ספציפי חיפשו משאבים. 144 00:07:16,070 --> 00:07:20,986 בדוגמא שלנו 404 לפני שני, אני שאלתי שוב לwww.cats.com, 145 00:07:20,986 --> 00:07:22,940 cats.com להיות המארח. 146 00:07:22,940 --> 00:07:26,300 ובתור הבקשה שלי, אמרתי /cats.html. 147 00:07:26,300 --> 00:07:27,790 זה היה היעד לבקשתי. 148 00:07:27,790 --> 00:07:31,200 אז כולל אני מבקש תוכן או המשאב ממוקם 149 00:07:31,200 --> 00:07:36,410 בwww.cats.com/cats.html. 150 00:07:36,410 --> 00:07:38,870 >> ולאחר מכן על בסיס האם המשאבים קיימים 151 00:07:38,870 --> 00:07:42,160 ואם השרת יכול לספק המשאבים בהתאם ללקוח של 152 00:07:42,160 --> 00:07:46,760 בקשה, אתה יכול לקבל קודי מצב שונים בחזרה. 153 00:07:46,760 --> 00:07:50,280 חלק מקודי המצב אלה שראיתם בגלל שהם חלק מהתגובה. 154 00:07:50,280 --> 00:07:53,580 חלק מהם, 200 אישור, הם כנראה די שקט. 155 00:07:53,580 --> 00:07:55,650 אתה אף פעם לא ראית בוודאי דף להגיב 200 על אישור. 156 00:07:55,650 --> 00:07:56,890 אתה פשוט מקבל את הדף. 157 00:07:56,890 --> 00:08:01,260 זה לא כמו שגיאה 404, שהיא בדרך כלל די ברורה. 158 00:08:01,260 --> 00:08:03,850 אתה בדרך כלל רואה שזה אומר 404. 159 00:08:03,850 --> 00:08:06,880 >> אז בואו נדבר על מה שכמה של קודי מצב אלה עשויים להיות. 160 00:08:06,880 --> 00:08:09,660 שוב, כאשר השרת מגיבים אלינו, הם 161 00:08:09,660 --> 00:08:12,120 הולך להגיב מעמד גרסת HTTP. 162 00:08:12,120 --> 00:08:14,020 בדרך כלל HTTP / 1.1. 163 00:08:14,020 --> 00:08:17,410 מה הם קודי מצב אלה הולכים להיות? 164 00:08:17,410 --> 00:08:18,890 ובכן, אנחנו עלולים להגיע להצלחה. 165 00:08:18,890 --> 00:08:23,617 אז בקטגורית ההצלחה, אנחנו עשוי לקבל קוד 200 עם אישור הטקסט. 166 00:08:23,617 --> 00:08:24,450 מה זה אומר? 167 00:08:24,450 --> 00:08:25,491 ובכן, הכל טוב. 168 00:08:25,491 --> 00:08:26,721 אתה עשית בקשה בתוקף. 169 00:08:26,721 --> 00:08:27,720 הנה תגובה תקפה. 170 00:08:27,720 --> 00:08:30,060 אני היה מסוגל לספק בדיוק מה שרצית. 171 00:08:30,060 --> 00:08:33,080 >> לפעמים אתה עלול לקבל דברים אחרים שאתה לא שם לב מייד 172 00:08:33,080 --> 00:08:35,140 אבל הם מעט כישלונות. 173 00:08:35,140 --> 00:08:36,422 הם נקראים הפניות. 174 00:08:36,422 --> 00:08:37,630 יש שני אלה נפוצים כאן. 175 00:08:37,630 --> 00:08:41,520 Permanently-- הועבר 301 מה זה בעצם אומר 176 00:08:41,520 --> 00:08:43,559 הוא הדף הוא עכשיו במיקום חדש. 177 00:08:43,559 --> 00:08:44,920 הוא יחיה שם לנצח. 178 00:08:44,920 --> 00:08:47,150 ורוב הדפדפנים באופן אוטומטי להפנות אותך. 179 00:08:47,150 --> 00:08:49,860 אז אתה לעולם לא באמת רואה 301, או, אלא אם כן אתה 180 00:08:49,860 --> 00:08:52,210 באמצעות באמת-מחוץ לתאריך דפדפן, אולי, 181 00:08:52,210 --> 00:08:57,660 בגלל התגובה 301 היא חלק מ הנקודה, הנקודה, נקודה של התגובה 301. 182 00:08:57,660 --> 00:08:59,577 זה גם אומר לך שבו הדף החדש הוא. 183 00:08:59,577 --> 00:09:01,660 וכך רוב הדפדפנים רק להפנות אותך לשם, 184 00:09:01,660 --> 00:09:03,570 בהנחה שאתה רוצה ללכת לשם. 185 00:09:03,570 --> 00:09:05,440 >> לפעמים אתה גם תקבל 302 מצא. 186 00:09:05,440 --> 00:09:07,850 וזה אחד שאתה באמת אולי עדיין רואה מדי פעם. 187 00:09:07,850 --> 00:09:09,720 לפעמים דפים לעבור באופן זמני. 188 00:09:09,720 --> 00:09:13,570 אז זה לא הולך להיות מובנה בתוך הבקשה אומרת לי הדפדפן 189 00:09:13,570 --> 00:09:16,740 לשנות בכל עת באופן קבוע הוא רואה את הבקשה ש 190 00:09:16,740 --> 00:09:18,255 לעשות כדי לשנות את זה למשהו אחר. 191 00:09:18,255 --> 00:09:21,210 אז אולי אתה רואה 302 נמצא, שביסודו 192 00:09:21,210 --> 00:09:22,710 אומר דף זה גר במקום אחר. 193 00:09:22,710 --> 00:09:24,418 אבל זה לא הולך לחיות שם לנצח. 194 00:09:24,418 --> 00:09:29,052 זה יהיה כנראה סופו של דבר ללכת בחזרה למקום שבי אתה חושב שזה. 195 00:09:29,052 --> 00:09:31,780 >> ואז תקבל דברים כמו שגיאות הלקוח. 196 00:09:31,780 --> 00:09:34,012 אז אלה הם אלה שיש לך כנראה ראה, עכשיו. 197 00:09:34,012 --> 00:09:35,970 אתה כנראה לא ראית 200S או 300s, 198 00:09:35,970 --> 00:09:37,370 אבל אתה כנראה מכיר את 400s. 199 00:09:37,370 --> 00:09:40,130 וזה מה שנדברנו על בשני, 500s גם כן. 200 00:09:40,130 --> 00:09:42,580 >> ייתכן שתראה 401 לא מורשים. 201 00:09:42,580 --> 00:09:45,100 בדרך כלל זה אומר שאתה מנסה לגשת לדף, 202 00:09:45,100 --> 00:09:46,230 אבל אתה לא מחובר. 203 00:09:46,230 --> 00:09:50,500 אז אתה מנסה וללכת לכמה פרופיל או משהו בפייסבוק 204 00:09:50,500 --> 00:09:53,106 או שאתה מנסה וגישה some-- אתה בעבודה. 205 00:09:53,106 --> 00:09:56,619 אתה מנסה לגשת למשהו באינטרנט של העבודה שלך, 206 00:09:56,619 --> 00:09:57,660 אבל אתה לא מחובר. 207 00:09:57,660 --> 00:09:58,740 אתה לא יכול לראות את הדף. 208 00:09:58,740 --> 00:10:01,770 אתה עלול לקבל 401 לא מורשה, מה שאומר שאנחנו כנראה 209 00:10:01,770 --> 00:10:06,590 יהיה מסוגל לספק את הבקשה זו, אבל קודם אתה צריך להיכנס למערכת כדי לעשות זאת. 210 00:10:06,590 --> 00:10:09,590 >> לעומת זאת, אתה עשוי לקבל 403 אסור, שזה לא ממש 211 00:10:09,590 --> 00:10:11,490 משנה אם אתה מחובר או לא. 212 00:10:11,490 --> 00:10:13,020 בקשה זו אינה מותרת. 213 00:10:13,020 --> 00:10:15,320 המשאבים קיימים בשרת. 214 00:10:15,320 --> 00:10:17,817 אבל אסור לך לגשת אליו. 215 00:10:17,817 --> 00:10:20,900 זה בדרך כלל קבצים פנימיים ש לחיות בשרת מסיבות שונות 216 00:10:20,900 --> 00:10:23,860 אבל הם לא נועדו להיות נצפה מהעולם החיצוני, 217 00:10:23,860 --> 00:10:25,030 ולכן הם אסורים. 218 00:10:25,030 --> 00:10:27,120 הם חיים שם. 219 00:10:27,120 --> 00:10:28,440 אני לא אומר שאני לא יכול למצוא אותו. 220 00:10:28,440 --> 00:10:30,030 אבל אני אומר שאני לא יכול לתת לך את זה. 221 00:10:30,030 --> 00:10:32,071 וזה לא משנה אם אתה מחובר או לא. 222 00:10:32,071 --> 00:10:35,479 ואז כמובן, נפוץ מאוד 404 לא נמצא. 223 00:10:35,479 --> 00:10:37,020 הקובץ לא קיים בשרת. 224 00:10:37,020 --> 00:10:40,200 אני רוצה לספק את לא בקשתך, אבל אני יכול. 225 00:10:40,200 --> 00:10:43,390 >> אתה גם רואה לפעמים שרת שגיאות, הנפוץ ביותר, בדרך כלל, 226 00:10:43,390 --> 00:10:46,990 500 להיות שגיאת שרת פנימית, ש לא ממש אומר לך משהו 227 00:10:46,990 --> 00:10:50,200 בכלל על מה השתבש. 228 00:10:50,200 --> 00:10:53,290 אבל זה לא באמת מה שהופך אותך טעות בבקשתך. 229 00:10:53,290 --> 00:10:58,200 זה בעצם השרת נכשל לספק על פי בקשה איכשהו. 230 00:10:58,200 --> 00:11:00,040 אז 500 היא התגובה הכללית. 231 00:11:00,040 --> 00:11:03,190 >> תראה גם משהו כמו שירות לא זמין, 232 00:11:03,190 --> 00:11:05,720 אני מאמין בו קוד 503. 233 00:11:05,720 --> 00:11:07,882 וTimeout-- Gateway אם אי פעם היה רק ​​דף 234 00:11:07,882 --> 00:11:09,590 לשבת שם וטעינה טעינה וטעינה 235 00:11:09,590 --> 00:11:12,715 ואתה לא יודע אם זה הולך עומס ואז סופו של דבר זה רק says-- 236 00:11:12,715 --> 00:11:13,650 רק מוותר. 237 00:11:13,650 --> 00:11:15,460 זה Gateway Timeout 504. 238 00:11:15,460 --> 00:11:17,600 השרת רצה לבצע את בקשתך, 239 00:11:17,600 --> 00:11:19,930 אבל משהו השתבש על האתרים-- השרת 240 00:11:19,930 --> 00:11:24,452 לא על האתרים-- ל לגרום לכך שיש בעיה. 241 00:11:24,452 --> 00:11:27,410 עכשיו, אנחנו יכולים לסיים את הסיפור כאן, אבל מה אני בעצם הולך לעשות עכשיו 242 00:11:27,410 --> 00:11:29,368 הוא אני הולך לפתוח הדפדפן שלי ולהראות לך 243 00:11:29,368 --> 00:11:32,250 איך ייתכן שתוכל לראות חלק מקודי המצב הבאים 244 00:11:32,250 --> 00:11:34,580 גם אם אתה בדרך כלל לא רואה אותם. 245 00:11:34,580 --> 00:11:39,090 ואנחנו הולכים לעשות את זה על ידי לקיחה יסתכל על כמה כלי פיתוח. 246 00:11:39,090 --> 00:11:42,050 >> בסדר אז הנה אני עכשיו בחלון הדפדפן שלי. 247 00:11:42,050 --> 00:11:45,840 ואני רוצה ללמוד קצת נוסף על בקשות HTTP אלה. 248 00:11:45,840 --> 00:11:49,060 איך אני יודע-- בהחלט אנחנו יודעים אם דף goes-- כאשר משהו משתבש, 249 00:11:49,060 --> 00:11:49,630 אנחנו מקבלים 404. 250 00:11:49,630 --> 00:11:50,465 כולנו ראינו את זה. 251 00:11:50,465 --> 00:11:51,840 אנחנו לא צריכים להמחיש ש. 252 00:11:51,840 --> 00:11:53,048 אבל מה הם כמה אלה אחרים? 253 00:11:53,048 --> 00:11:56,850 ואיך היינו רואה בקשות אלה בפעולה? 254 00:11:56,850 --> 00:11:59,990 >> דבר ראשון אז אני הולך לעשות הוא לפתוח את כלי פיתוח. 255 00:11:59,990 --> 00:12:02,580 אז כלי פיתוח בנויים למרבית הדפדפנים המודרניים 256 00:12:02,580 --> 00:12:06,020 ומאפשר לנו לראות את הדברים שאנחנו לא בדרך אחרת 257 00:12:06,020 --> 00:12:10,580 see-- איזה מידע נוסף של משודרים מתחת האינטרנט שלנו 258 00:12:10,580 --> 00:12:11,500 בקשות. 259 00:12:11,500 --> 00:12:12,790 אני משתמש ב- Google Chrome כאן. 260 00:12:12,790 --> 00:12:16,900 ולפתוח כלי פיתוח בכרום, אתה פשוט פגע F-12, 261 00:12:16,900 --> 00:12:18,729 וזה הולך לפתוח זה בצד. 262 00:12:18,729 --> 00:12:21,770 ברגע שאני מקליד את הבקשה, אני להתמקד ב כדי שנוכל לראות מה קורה כאן. 263 00:12:21,770 --> 00:12:28,530 אבל מה שאני הולך לעשות בדפדפן שלי בר הוא-- ואני להתקרב מעל כאן-- 264 00:12:28,530 --> 00:12:32,427 אני אעשה בקשה לwww.google.com. 265 00:12:32,427 --> 00:12:34,260 כולנו כנראה עשינו בקשה זו לפני. 266 00:12:34,260 --> 00:12:35,400 אני הולך על Enter. 267 00:12:35,400 --> 00:12:41,920 268 00:12:41,920 --> 00:12:46,400 >> עכשיו, כאן במפתח שלי כלים, שבחרתי בכרטיסייה הרשת. 269 00:12:46,400 --> 00:12:48,010 ושמתם לב הרבה דברים כאן. 270 00:12:48,010 --> 00:12:51,732 תראה these-- 200 אישור, אישור 200, כמה של קודי המצב שיבוא. 271 00:12:51,732 --> 00:12:53,356 אני לא יודע למה אני מקבל 302 נמצאו. 272 00:12:53,356 --> 00:12:54,860 אני לא מבין הייתי רואה שאחד. 273 00:12:54,860 --> 00:12:58,192 אבל בעצם שם לב שדי הרבה, במונחים של request-- Google שלי 274 00:12:58,192 --> 00:13:00,150 אני עשיתי פשוט מאוד בקשה לדף של גוגל. 275 00:13:00,150 --> 00:13:02,890 ובתהליך של אספקת הבקשה שלי, 276 00:13:02,890 --> 00:13:05,670 גוגל כנראה עשתה הרבה בקשות אחרות בשם שלי. 277 00:13:05,670 --> 00:13:11,990 >> אבל אני כבר עשיתי בקשת גט לגוגל דף ואני מקבלים הרבה 200 OKs. 278 00:13:11,990 --> 00:13:14,830 אני לא רואה 200 על אישור ב המסך שלי, אבל אני מקבל 279 00:13:14,830 --> 00:13:17,170 הרבה בקשות שנעשו. 280 00:13:17,170 --> 00:13:19,550 אחד יותר כי אני די בטוח הולך לעבוד 281 00:13:19,550 --> 00:13:21,920 הוא-- לאלו מכם ש באמת האסכולה ישנה, 282 00:13:21,920 --> 00:13:26,012 ייתכן שאתה יודע שפייסבוק היה לא תמיד בFacebook.com. 283 00:13:26,012 --> 00:13:29,780 בימים הראשונים שלה זה היה בwwww.thefacebook.com. 284 00:13:29,780 --> 00:13:33,560 הם כנראה לא יכולים לקבל גישה לFacebook.com במשך דקות ארוכות. 285 00:13:33,560 --> 00:13:35,870 >> ואז מה אני מצפה כאן הוא כדי לקבל מידע. 286 00:13:35,870 --> 00:13:37,315 ונראה אם ​​זה יצליח. 287 00:13:37,315 --> 00:13:39,190 מה אני מצפה כאן הוא לקבל מידע 288 00:13:39,190 --> 00:13:43,980 שפייסבוק עבר באופן קבוע מthefacebook.com לFacebook.com. 289 00:13:43,980 --> 00:13:46,830 אז אני מצפה למקום בחלק העליון של הבקשות שלי 290 00:13:46,830 --> 00:13:50,730 מעל בכלי הפיתוח שלי כדי לקבל הודעה 301 291 00:13:50,730 --> 00:13:52,580 שפייסבוק עבר באופן קבוע. 292 00:13:52,580 --> 00:13:59,070 שוב, אני לא רואה 301 על המסך בדפדפן שלי. 293 00:13:59,070 --> 00:14:01,380 ובגלל שזה 301, זה מהלך קבוע. 294 00:14:01,380 --> 00:14:03,500 הדפדפן שלי, להיות ש זה דפדפן מודרני, 295 00:14:03,500 --> 00:14:06,110 הוא כנראה הולך להפנות שלי Facebook.com בכל מקרה. 296 00:14:06,110 --> 00:14:07,260 אבל בואו נראה מה קורה. 297 00:14:07,260 --> 00:14:09,340 >> ועכשיו אני הולך ל ללכת לthefacebook.com. 298 00:14:09,340 --> 00:14:11,370 וכן, יש את זה נכון בחלקו העליון. 299 00:14:11,370 --> 00:14:13,390 זה הלך משם, אבל זה היה שם. 300 00:14:13,390 --> 00:14:14,820 תן לי לגלול מעלה כאן. 301 00:14:14,820 --> 00:14:18,004 302 00:14:18,004 --> 00:14:18,920 ממש כאן בראש. 303 00:14:18,920 --> 00:14:23,080 אני עשיתי את בקשה לthefacebook.com, ואני מקבל תגובה 304 00:14:23,080 --> 00:14:25,410 שהדף הזה עבר באופן קבוע. 305 00:14:25,410 --> 00:14:27,770 ולאחר מכן 307 כאן הוא הפניה פנימית. 306 00:14:27,770 --> 00:14:30,680 ואז זה מה שיש בפועל העביר אותי להרבה יותר 307 00:14:30,680 --> 00:14:33,330 www.facebook.com המוכר. 308 00:14:33,330 --> 00:14:38,480 >> אז קודי תגובה אלה לעשות עדיין יקרה, גם אם אנחנו לא רואים אותם. 309 00:14:38,480 --> 00:14:40,710 אני לא הולך ל להמחיש 401, 403, 404, 310 00:14:40,710 --> 00:14:43,090 בגלל שאתה כנראה כבר ראית אלה בנקודות שונות. 311 00:14:43,090 --> 00:14:45,740 ו -500, הייתי רק עצם-- היינו מזל 312 00:14:45,740 --> 00:14:50,380 אם יש לי 500 כי אנחנו לא יודעים מה שרתים ירדו כרגע בכל מקום. 313 00:14:50,380 --> 00:14:53,060 אבל את הקודים הללו לעשות קיימות, ויש דרך 314 00:14:53,060 --> 00:14:58,610 כדי לגשת אליהם גם אם אנחנו לא לראות אותם ממקור ראשון על המערכות שלנו. 315 00:14:58,610 --> 00:14:59,530 אני דאג לויד. 316 00:14:59,530 --> 00:15:01,570 זה CS50. 317 00:15:01,570 --> 00:15:03,557