1
00:00:03,680 --> 00:00:07,800
في التمرين في الدرس السابق،

2
00:00:07,800 --> 00:00:13,940
قمنا ببناء خادم HTTP بسيط يمكن أن يخدم محتوى ثابت،

3
00:00:13,940 --> 00:00:17,825
تم بناء هذا بالكامل باستخدام Node.js.

4
00:00:17,825 --> 00:00:20,800
الآن بعد أن تعلمنا عن Express،

5
00:00:20,800 --> 00:00:27,700
إطار الحد الأدنى الذي يدعم تطوير الخادم على رأس Node.js،

6
00:00:27,700 --> 00:00:37,640
دعونا الآن دراسة كيف يمكننا استخدام Express لبناء نفس الخادم في هذا التمرين.

7
00:00:37,640 --> 00:00:43,520
للبدء، انتقل إلى المجلد Node.js الذي كنا نستخدمه لتخزين

8
00:00:43,520 --> 00:00:51,540
كافة التعليمات البرمجية لهذه الدورة، ثم قم بإنشاء مجلد جديد هناك باسم العقدة express،

9
00:00:52,170 --> 00:00:56,170
ثم انتقل إلى هذا المجلد.

10
00:00:56,170 --> 00:00:59,315
الآن، سنقوم بإنشاء

11
00:00:59,315 --> 00:01:06,815
مجلد عمومي هنا داخل مجلد اكسبرس العقدة.

12
00:01:06,815 --> 00:01:14,645
ثم، سوف نذهب إلى هذا المجلد العمومي HTTP العقدة ومن ثم نسخ هذين الملفين،

13
00:01:14,645 --> 00:01:20,835
index.HTML و aboutus.html إلى المجلد العمومي عقدة إكسبريس.

14
00:01:20,835 --> 00:01:23,660
سنقوم بتقديم هذين الملفين باستخدام

15
00:01:23,660 --> 00:01:27,980
خادم Express الذي سنقوم ببنائه في هذا التمرين.

16
00:01:27,980 --> 00:01:31,070
الآن، الذهاب إلى المحطات.

17
00:01:31,070 --> 00:01:40,725
انتقل إلى مجلد عقدة اكسبرس في المحطة الطرفية ثم في نوع موجه npm init،

18
00:01:40,725 --> 00:01:44,060
لتهيئة تطبيق عقدة.

19
00:01:44,060 --> 00:01:50,645
ثم، بالنسبة لاسم الحزمة، دعنا فقط نستخدم

20
00:01:50,645 --> 00:02:00,725
العقدة express، وللوصف سنقول Node Express Express Express

21
00:02:00,725 --> 00:02:04,685
،

22
00:02:04,685 --> 00:02:09,740
ونقطة الإدخال هي index.js، وكل

23
00:02:09,740 --> 00:02:14,520
ما تبقى من ذلك كما كان من قبل، ودعونا إنشاء ملف package.json.

24
00:02:14,520 --> 00:02:17,290
الآن، اسمحوا لي

25
00:02:18,470 --> 00:02:26,525
أن فتح المشروع باستخدام محرر فيسوال ستوديو كود في

26
00:02:26,525 --> 00:02:35,950
حالتي وبعد ذلك، في ملف package.json دعونا نذهب وإضافة في البرنامج النصي الجديد يسمى بداية،

27
00:02:35,950 --> 00:02:42,745
وهو مؤشر عقدة وحفظ التغييرات.

28
00:02:42,745 --> 00:02:46,100
الآن، بعد أن قمنا بتهيئة وحدة العقدة،

29
00:02:46,100 --> 00:02:50,060
دعنا نمضي قدما وتثبيت إطار Express داخل

30
00:02:50,060 --> 00:02:54,985
المشروع للاستفادة منه لبناء الخادم السريع لدينا.

31
00:02:54,985 --> 00:02:56,105
لذلك، في موجه،

32
00:02:56,105 --> 00:03:01,250
اكتب npm install express.

33
00:03:01,250 --> 00:03:03,065
لذلك هذه هي الطريقة التي سيتم تثبيت

34
00:03:03,065 --> 00:03:07,280
وحدة عقدة طرف ثالث إذا كنت تأخذ هذه

35
00:03:07,280 --> 00:03:11,060
الدورة للمرة الأولى ولم تأخذ الدورات السابقة

36
00:03:11,060 --> 00:03:15,200
ثم وهذا هو الشيء الذي من المهم أن نلاحظ.

37
00:03:15,200 --> 00:03:20,450
هذه هي الطريقة التي سيتم تثبيت وحدة عقدة عن طريق إضافة ناقص حفظ،

38
00:03:20,450 --> 00:03:23,435
ونحن أيضا حفظ المعلومات أن

39
00:03:23,435 --> 00:03:27,380
هذه الوحدة عقدة طرف ثالث هو التبعية

40
00:03:27,380 --> 00:03:31,740
لمشروعنا وسيتم حفظ هذه المعلومات في ملف package.json.

41
00:03:31,740 --> 00:03:34,835
إذا كنت قد أخذت الدورات السابقة من التخصص،

42
00:03:34,835 --> 00:03:38,110
ثم كنت تعرف بالفعل عن هذه المعلومات.

43
00:03:38,110 --> 00:03:44,000
لذلك، دعونا المضي قدما وتثبيت وحدة اكسبرس.

44
00:03:44,000 --> 00:03:45,725
كما يمكنك ملاحظة،

45
00:03:45,725 --> 00:03:51,380
نحن نستخدم الإصدار السريع 4.16.3 في هذه الدورة.

46
00:03:51,380 --> 00:03:54,875
لذلك، دعونا نعود الآن إلى رمزنا.

47
00:03:54,875 --> 00:03:58,025
إلقاء نظرة على ملف package.json،

48
00:03:58,025 --> 00:04:03,530
ترى أنه داخل ملف package.json عن طريق تثبيت Express نرى بالفعل

49
00:04:03,530 --> 00:04:10,265
خاصية أخرى يتم تضمينها في ملف package.json يسمى التبعيات.

50
00:04:10,265 --> 00:04:13,910
تتبع هذه التبعيات جميع الحزم

51
00:04:13,910 --> 00:04:16,750
التي سيعتمد عليها هذا المشروع الحالي.

52
00:04:16,750 --> 00:04:20,870
هنا ترى Express يتم تثبيته

53
00:04:20,870 --> 00:04:25,790
هناك والإصدار المقابل من Express يتم تثبيته هنا،

54
00:04:25,790 --> 00:04:30,320
لذلك هذا يعلن أن هذا المشروع معين

55
00:04:30,320 --> 00:04:35,660
يعتمد على إصدار Express 4.16.3 على الأقل.

56
00:04:35,660 --> 00:04:41,870
بالإضافة إلى ذلك، سترى أيضًا هذا المجلد الذي يسمى وحدات العقدة التي تم إنشاؤها هنا.

57
00:04:41,870 --> 00:04:46,175
لذلك هذا هو المكان الذي

58
00:04:46,175 --> 00:04:51,600
سيتم تخزين جميع وحدات عقدة طرف ثالث التي تم تثبيتها بواسطة التطبيق الخاص بك.

59
00:04:51,600 --> 00:04:54,305
الآن، عندما نقوم بتنفيذ Git،

60
00:04:54,305 --> 00:04:57,895
لا نريد ارتكاب مجلد وحدات العقدة هذا.

61
00:04:57,895 --> 00:04:59,965
لذلك لتجاهل ذلك،

62
00:04:59,965 --> 00:05:02,980
يتيح إنشاء ملف

63
00:05:02,980 --> 00:05:10,675
اسم.gitignore وداخل ملف.gitignore،

64
00:05:10,675 --> 00:05:14,475
دعونا نكتب في وحدات node_.

65
00:05:14,475 --> 00:05:18,740
لذا، هذا هو السماح لـ Git بمعرفة أننا لا نرغب

66
00:05:18,740 --> 00:05:23,315
في الالتزام بمجلد وحدات العقدة إلى مستودع Git.

67
00:05:23,315 --> 00:05:25,580
لذلك، مع هذا دعونا حفظ التغييرات.

68
00:05:25,580 --> 00:05:28,505
حتى الآن عند إنشاء مستودع Git،

69
00:05:28,505 --> 00:05:30,945
سيتم تجاهل مجلد وحدات العقدة.

70
00:05:30,945 --> 00:05:36,710
غير مطلوب لأنه يمكنك دائمًا إعادة إنشاء مجلد وحدات العقدة في أي وقت

71
00:05:36,710 --> 00:05:42,980
تقوم فيه باستنساخ هذا المشروع من مستودع Git الخاص بك ببساطة عن طريق كتابة npm install.

72
00:05:42,980 --> 00:05:46,405
سينظر هذا إلى ملف package.json،

73
00:05:46,405 --> 00:05:48,065
وإلقاء نظرة على جميع التبعيات،

74
00:05:48,065 --> 00:05:51,720
وتبعيات التطوير الموجودة في

75
00:05:51,720 --> 00:05:55,905
ملف package.json ويتم تثبيت جميع هذه الحزم تلقائيًا لك.

76
00:05:55,905 --> 00:05:58,260
الآن، بعد أن

77
00:05:58,260 --> 00:06:01,810
أكملنا هذا، دعونا إنشاء أول مشروع إكسبريس لدينا،

78
00:06:01,810 --> 00:06:09,350
وذلك للقيام بذلك سنقوم بإنشاء ملف باسم index.js وفي index.js

79
00:06:09,350 --> 00:06:19,190
سنعلن عن كونست اكسبرس تتطلب صريحة.

80
00:06:19,190 --> 00:06:23,255
الآن، ستلاحظ أن Express هو وحدة عقدة تابعة لجهة خارجية وقد تم

81
00:06:23,255 --> 00:06:27,910
تثبيته في مجلد وحدات العقدة في الدليل الصحيح.

82
00:06:27,910 --> 00:06:35,150
لذلك، عندما نعلن هذا هنا قائلا أن هذه الوحدة Express مطلوبة،

83
00:06:35,150 --> 00:06:41,030
ثم سيتم تضمينها تلقائيا من مجلد وحدات العقدة في تطبيقنا.

84
00:06:41,030 --> 00:06:46,145
الآن، أيضا تثبيت هتب

85
00:06:46,145 --> 00:06:55,785
الوحدة الأساسية هنا.

86
00:06:55,785 --> 00:06:57,585
الآن، بعد أن قمنا بتثبيت هذا،

87
00:06:57,585 --> 00:07:04,165
دعونا إنشاء اسم الدورة

88
00:07:04,165 --> 00:07:12,850
كمضيف محلي ورقم المنفذ كـ 3000.

89
00:07:12,850 --> 00:07:17,950
لذلك ترى أننا نستخدم بالضبط نفس الطريقة للقيام

90
00:07:17,950 --> 00:07:23,550
بهذا التمرين كما فعلنا في تمرين HTTP في وقت سابق.

91
00:07:23,550 --> 00:07:25,535
الآن، في هذه المرحلة،

92
00:07:25,535 --> 00:07:32,560
سوف نعلن هذا const يسمى التطبيق كما صريحة.

93
00:07:32,560 --> 00:07:37,855
بهذه الطريقة، نحن نقول أن تطبيقنا سيستخدم وحدة عقدة Express.

94
00:07:37,855 --> 00:07:39,620
لذا، بمجرد القيام بذلك

95
00:07:39,620 --> 00:07:47,840
، يوفر Express مجموعة من الطرق التي يمكننا استخدامها لبناء خادم الويب الخاص بنا.

96
00:07:47,840 --> 00:07:53,335
حتى بعد هذا، سوف نقول app.use () وداخل هنا،

97
00:07:53,335 --> 00:07:59,845
وسوف نعلن وظيفة التي سيتم استدعاؤها لإعداد الخادم لدينا.

98
00:07:59,845 --> 00:08:04,010
لذا، تأخذ هذه الوظيفة ثلاث معلمات req،

99
00:08:04,010 --> 00:08:06,330
وهو الطلب؛ res،

100
00:08:06,330 --> 00:08:09,850
وهو الاستجابة، والقادم.

101
00:08:09,850 --> 00:08:19,310
الآن، كما رأينا إكسبريس يستخدم الوسيطة إضافية.

102
00:08:19,310 --> 00:08:22,955
لذلك، يتم استخدام التالي عندما تحتاج إلى

103
00:08:22,955 --> 00:08:28,080
استدعاء برامج وسيطة إضافية لرعاية العمل نيابة عنك.

104
00:08:28,080 --> 00:08:32,930
سنرى استخدام التالي في بعض التدريبات اللاحقة،

105
00:08:32,930 --> 00:08:38,350
ولكن الوظيفة هنا سوف تأخذ ثلاث معلمات req، الدقة، وبعد ذلك.

106
00:08:38,350 --> 00:08:40,940
التالي هو معلمة اختيارية

107
00:08:40,940 --> 00:08:46,755
لا يمكن تضمينها إذا كنت لن تستخدمها داخل شفرتك.

108
00:08:46,755 --> 00:08:48,685
لذلك، في الداخل هنا سوف نقول،

109
00:08:48,685 --> 00:08:51,870
سجل وحدة التحكم وبعد ذلك،

110
00:08:51,870 --> 00:08:57,165
سنقوم بتسجيل تلك الرؤوس،

111
00:08:57,165 --> 00:09:07,840
وسنقوم بالرد مع رمز الحالة تعيين إلى 200.

112
00:09:11,120 --> 00:09:19,845
تعيين نوع محتوى الرأس

113
00:09:19,845 --> 00:09:25,870
كنص HTML.

114
00:09:25,870 --> 00:09:29,150
لذلك، لاحظت أن الكثير من هذا الرمز يبدو مشابهًا جدًا

115
00:09:29,150 --> 00:09:32,744
للطريقة التي قمنا بها بإعداد تطبيق العقدة.

116
00:09:32,744 --> 00:09:36,205
لذلك، سنقول res.end

117
00:09:36,205 --> 00:09:45,130
وهنا هتمل الجسم h1.

118
00:09:47,760 --> 00:09:56,245
سنقول فقط أن هذا هو خادم إكسبريس وإغلاق

119
00:09:56,245 --> 00:10:09,685
الدبابات هناك، وهذا كل شيء.

120
00:10:09,685 --> 00:10:14,970
من فهمك للعقدة HTTP،

121
00:10:14,970 --> 00:10:18,180
فأنت تفهم بالفعل ما يفعله هؤلاء الثلاثة

122
00:10:18,180 --> 00:10:22,735
ويتم نفس الشيء أيضًا في خادم Express.

123
00:10:22,735 --> 00:10:26,480
الآن بعد أن قمنا بإعداد الخادم باستخدام التطبيق،

124
00:10:26,480 --> 00:10:30,715
سنقوم بإعداد الخادم،

125
00:10:30,715 --> 00:10:35,435
ثم هذا هو المكان الذي سنستخدم فيه HTTP CreateServer،

126
00:10:35,435 --> 00:10:44,415
وبالتالي سيأخذ CreateServer الآن التطبيق كما هو معلمة الدالة هناك،

127
00:10:44,415 --> 00:10:54,850
وبعد ذلك، سنقول ببساطة منفذ

128
00:10:54,850 --> 00:11:03,160
server.listen، اسم المضيف و

129
00:11:03,160 --> 00:11:09,080
وظيفة السهم هنا التي سأقوم بطباعتها،

130
00:11:12,560 --> 00:11:24,340
وحدة التحكم، تسجيل خادم معطف الظهر قيد التشغيل في HTTP://اسم المضيف: المنفذ،

131
00:11:38,560 --> 00:11:43,880
هذا كل شيء. لذلك سترى أن هذا الجزء يشبه

132
00:11:43,880 --> 00:11:48,515
إلى حد كبير ما قمت به لممارسة هتب،

133
00:11:48,515 --> 00:11:51,620
إلا أن كريتيسيرفر يأخذ الآن هذا التطبيق،

134
00:11:51,620 --> 00:11:53,990
الذي أعلنا في وقت سابق إكسبريس.

135
00:11:53,990 --> 00:11:58,120
لذلك، يقوم Express بإضافة وظائف إضافية سيتم

136
00:11:58,120 --> 00:12:03,460
استخدامها من قبل خادم HTTP الذي نقوم بإنشائه باستخدام الملاحظة.

137
00:12:04,270 --> 00:12:06,540
بمجرد الانتهاء من ذلك،

138
00:12:06,540 --> 00:12:08,265
دعونا حفظ التغييرات،

139
00:12:08,265 --> 00:12:11,625
وبعد ذلك سوف نمضي قدما وبدء الخادم،

140
00:12:11,625 --> 00:12:14,900
وإلقاء نظرة على ما سيخدم الخادم.

141
00:12:14,900 --> 00:12:17,495
الذهاب إلى المحطة الطرفية، إضافة المحطة،

142
00:12:17,495 --> 00:12:25,160
اكتب بدء NPM وسترى أن الخادم الخاص بك هو قيد التشغيل والتشغيل.

143
00:12:25,160 --> 00:12:30,645
الآن عندما نصل إلى هذا إما من المتصفح أو من ساعي البريد،

144
00:12:30,645 --> 00:12:33,160
سترى ما يخدمه.

145
00:12:33,160 --> 00:12:36,320
لذا، هنا لدي ساعي البريد فوق والمال.

146
00:12:36,320 --> 00:12:41,425
اسمحوا لي أن أرسل طلب جيت إلى لوكالهوست 3،000 تماما كما كان من قبل،

147
00:12:41,425 --> 00:12:47,545
وسوف ترى أن هذا يخدم حتى رمز هتمل التي ندرجها هناك،

148
00:12:47,545 --> 00:12:50,655
وبالتالي هذا هو خادم إكسبريس.

149
00:12:50,655 --> 00:12:52,075
بالنقر على المعاينة،

150
00:12:52,075 --> 00:12:56,460
سيظهر لك هذا ما سيبدو عليه في المتصفح،

151
00:12:56,970 --> 00:13:03,490
وهذا يظهر النسخة الأولية من الشفرة التي تم إرسالها مرة أخرى من جانب الخادم،

152
00:13:03,490 --> 00:13:06,905
ويمكنك أن ترى أن رمز الحالة هو 200، حسنا؟

153
00:13:06,905 --> 00:13:13,560
وتم إرسال متجه معلومات الرأس الأخرى من موقع الخادم.

154
00:13:13,560 --> 00:13:20,190
لاحظ على وجه الخصوص أنه يقول x مدعوم من Express في الرأس.

155
00:13:20,190 --> 00:13:24,110
مع هذا، نكمل الجزء الأول من هذا التمرين حيث رأينا

156
00:13:24,110 --> 00:13:29,535
كيف يمكننا الاستفادة من Express لإعداد خادم ويب بسيط.

157
00:13:29,535 --> 00:13:35,540
اسمحوا لي الآن إيقاف الخادم ثم تهيئة مستودع Git،

158
00:13:35,540 --> 00:13:40,330
لذلك في موجه

159
00:13:40,330 --> 00:13:48,030
سأكتب «git init» ثم «git status»

160
00:13:48,030 --> 00:13:55,805
وسترى أن الملفات التي تم إلغاء تعقبها، لذلك سأقول «الحصول على وإسقاط» ويتم إضافة هذه الملفات الآن في مستودع Git،

161
00:13:55,805 --> 00:13:57,750
وهكذا عندما تقول git،

162
00:13:57,750 --> 00:13:59,780
سترى الملفات التي تمت إضافتها.

163
00:13:59,780 --> 00:14:02,610
لاحظ على وجه الخصوص أنه

164
00:14:02,610 --> 00:14:05,750
لم تتم إضافة مجلد وحدات العقدة إلى مستودع Git لأنه في

165
00:14:05,750 --> 00:14:09,310
ملف.gitignore ذكرنا صراحة أنه

166
00:14:09,310 --> 00:14:14,035
لا ينبغي تضمين مجلد وحدات العقدة في مستودع Git.

167
00:14:14,035 --> 00:14:19,905
حتى الآن، دعونا تحقق في تبادل الالتزام لدينا من خلال قول git

168
00:14:19,905 --> 00:14:28,095
ارتكاب ناقص m Express المثال،

169
00:14:28,095 --> 00:14:32,285
ونحن قد التزمت هذا إلى مستودع Git لدينا.

170
00:14:32,285 --> 00:14:34,820
في الجزء الثاني من هذا التمرين،

171
00:14:34,820 --> 00:14:40,975
سننظر في استخدام البرامج الوسيطة Express تسمى Morgan.

172
00:14:40,975 --> 00:14:46,390
يتم استخدام مورغان لتسجيل المعلومات إلى الشاشة،

173
00:14:46,390 --> 00:14:50,640
لذلك فإنه سيتم تسجيل معلومات حول الطلبات الواردة إلى الشاشة حتى

174
00:14:50,640 --> 00:14:55,185
نتمكن من رؤية بعض المعلومات التي يتم طباعتها في وحدة التحكم لدينا هنا.

175
00:14:55,185 --> 00:15:02,290
أيضا، سنرى كيف يمكننا إعداد خادم Express لدينا لخدمة ملفات HTML ثابتة.

176
00:15:02,290 --> 00:15:06,740
للبدء، في نوع موجه npm

177
00:15:06,740 --> 00:15:13,505
تثبيت مورغان ناقص، ناقص حفظ.

178
00:15:13,505 --> 00:15:18,650
الآن، مورغان ستكون تبعية التي سنستخدمها في تطبيقنا.

179
00:15:18,650 --> 00:15:20,390
لذلك، هذا هو السبب في انها ناقص،

180
00:15:20,390 --> 00:15:24,530
ناقص حفظ وهذا من شأنه الحصول على تثبيت،

181
00:15:24,530 --> 00:15:32,260
ويمكنك أن ترى أن أنا باستخدام مورغان الإصدار 1.9.0 في هذه الدورة.

182
00:15:32,260 --> 00:15:34,735
الآن بعد أن قمنا بتثبيت مورغان،

183
00:15:34,735 --> 00:15:38,650
دعونا نرى كيف يمكننا الاستفادة منه داخل تطبيقنا.

184
00:15:38,650 --> 00:15:40,615
حتى الذهاب إلى التطبيق لدينا،

185
00:15:40,615 --> 00:15:47,235
والطريقة للاستفادة من مورغان هو أن تعلن هنا

186
00:15:47,235 --> 00:15:57,015
const مورغان تتطلب مورغان،

187
00:15:57,015 --> 00:16:01,470
وبعد ذلك سوف نقول،

188
00:16:01,470 --> 00:16:10,665
«استخدام التطبيق مورغان مع التنمية».

189
00:16:10,665 --> 00:16:12,820
لذا، هذه هي نسخة التطوير.

190
00:16:12,820 --> 00:16:18,045
لذلك، فإنه سيتم طباعة معلومات إضافية على الشاشة كما هو مطلوب.

191
00:16:18,045 --> 00:16:21,400
الآن، والخوض في طلبنا.

192
00:16:21,990 --> 00:16:28,460
ضمن طلبنا، لن أقوم بتسجيل الرؤوس بأكملها.

193
00:16:28,460 --> 00:16:32,500
بدلاً من ذلك، دعني أزيل هذا لأن Morgan

194
00:16:32,500 --> 00:16:37,750
سيسجل معلومات كافية لنا للنظر فيها،

195
00:16:37,750 --> 00:16:47,695
وسأقوم بإعداد الخادم الخاص بي لخدمة ملفات HTML من المجلد العمومي.

196
00:16:47,695 --> 00:16:48,945
لذلك للقيام بذلك،

197
00:16:48,945 --> 00:16:56,660
أنا ذاهب إلى الإعلان عن استخدام والتعبير عن ثابت.

198
00:16:56,660 --> 00:17:06,265
هذا يخبر Express لخدمة الملفات الثابتة من dirname تسطير سفلي مزدوج.

199
00:17:06,265 --> 00:17:13,735
لذلك، هذا يقول جذر

200
00:17:13,735 --> 00:17:19,430
هذا المشروع وسوف تجد تلك الملفات

201
00:17:19,430 --> 00:17:25,605
في double_dirname، زائد/العامة.

202
00:17:25,605 --> 00:17:30,355
لذلك، أذكر أننا أنشأنا المجلد العمومي في مجلد العقدة إكسبريس.

203
00:17:30,355 --> 00:17:35,845
لذلك، هذا هو إعلام إكسبريس أنك سوف ننظر إلى

204
00:17:35,845 --> 00:17:42,630
هذا المجلد معين في المجلد الجذر من هذا المشروع وداخل المجلد العمومي.

205
00:17:42,630 --> 00:17:45,985
لذلك، سيكون هذا المجلد الذي

206
00:17:45,985 --> 00:17:52,530
سيتم تقديم ملفات HTML الثابتة من خلال خادم Express الخاص بي.

207
00:17:52,530 --> 00:17:54,155
بعد إجراء هذه التغييرات،

208
00:17:54,155 --> 00:17:55,660
دعنا نحفظ التغييرات،

209
00:17:55,660 --> 00:17:58,615
ثم أعد تشغيل الخادم الخاص بنا،

210
00:17:58,615 --> 00:18:01,480
ثم نرى كيف يعمل.

211
00:18:01,480 --> 00:18:04,495
الذهاب إلى هذه المطالبة،

212
00:18:04,495 --> 00:18:08,520
دعونا اكتب npm start

213
00:18:08,520 --> 00:18:10,510
، لبدء الخادم الخاص بنا،

214
00:18:10,510 --> 00:18:12,985
وبمجرد تشغيل الخادم،

215
00:18:12,985 --> 00:18:18,960
دعنا نفحص ما سيقدمه عندما نرسل طلبات مختلفة إلى هذا الخادم.

216
00:18:18,960 --> 00:18:24,200
باستخدام ساعي البريد، دعنا أولاً نرسل طلب الحصول على إلى المضيف المحلي: 3،000

217
00:18:24,200 --> 00:18:32,545
وستلاحظ أنه يخدم ملف index.html.

218
00:18:32,545 --> 00:18:38,795
لقد قمنا بإعداد خادمنا لخدمة ملفات ثابتة من المجلد العمومي،

219
00:18:38,795 --> 00:18:43,190
وإذا كنا نقول فقط لوكالهوست: 3000 افتراضيا،

220
00:18:43,190 --> 00:18:45,060
فإنه سيتم تقديم ملف index.html.

221
00:18:45,060 --> 00:18:48,685
لذا، هذه هي الطريقة التي يعمل بها خادم الويب النموذجي.

222
00:18:48,685 --> 00:18:53,440
لذلك، هذا ما انتهى بنا الأمر إلى إعداد الخادم السريع لدينا للقيام به.

223
00:18:53,440 --> 00:19:01,735
الآن، دعونا نكتب في localhost: 3000 about.html وإرسال الطلب،

224
00:19:01,735 --> 00:19:04,280
ويقول هذا هو عن استراتيجية HTML لدينا،

225
00:19:04,280 --> 00:19:07,660
وأيضا تم حفظ ملف HTML حول لنا هنا.

226
00:19:07,660 --> 00:19:09,145
حتى في المعاينة،

227
00:19:09,145 --> 00:19:14,710
يمكنك ان ترى الملف الناتج الذي تم تقديمه من موقع الخادم لدينا.

228
00:19:14,710 --> 00:19:20,020
دعونا نحاول الوصول إلى ملف غير موجود

229
00:19:20,020 --> 00:19:25,755
وسترى أنه عند محاولة الوصول إلى ملف غير موجود،

230
00:19:25,755 --> 00:19:31,995
فإنه سيتم الافتراضي إلى الإعداد الثاني الذي قمنا به في التعليمات البرمجية الخاصة بنا،

231
00:19:31,995 --> 00:19:34,175
والذي يقول هذا هو خادم Express.

232
00:19:34,175 --> 00:19:37,790
لم نحدد لخادم Express الخاص بنا كيفية التعامل مع

233
00:19:37,790 --> 00:19:42,830
الحالات التي يواجه فيها ملفًا غير موجود.

234
00:19:42,830 --> 00:19:50,450
لذلك، هذا هو السبب في أنه يستخدم الافتراضي الذي تم إعداده مباشرة أسفل ثابت Express،

235
00:19:50,450 --> 00:19:53,680
وهو لخدمة القيمة الافتراضية، وبطبيعة الحال،

236
00:19:53,680 --> 00:19:57,335
هذا ليس السلوك الأكثر مثالية

237
00:19:57,335 --> 00:20:00,845
ولكن هذا ما لدينا في خادم Express في هذه اللحظة.

238
00:20:00,845 --> 00:20:04,940
في وقت لاحق، سنقوم بتعديل خادم Express للتعامل مع

239
00:20:04,940 --> 00:20:10,215
الأخطاء بمزيد من التفصيل، في تمارين لاحقة.

240
00:20:10,215 --> 00:20:14,780
هذا هو أيضا الوقت المناسب بالنسبة لك للقيام جيت ارتكاب التغييرات.

241
00:20:14,780 --> 00:20:20,760
لذا، دعنا نتحقق من حالة Git بعد إيقاف الخادم،

242
00:20:20,760 --> 00:20:25,925
وسنضيف الملفات المعدلة،

243
00:20:25,925 --> 00:20:29,189
ثم نقوم بتنفيذ Git

244
00:20:29,189 --> 00:20:36,880
ناقص m Express،

245
00:20:36,880 --> 00:20:44,125
ونخدم ملفات ثابتة.

246
00:20:44,125 --> 00:20:46,030
هذا كل شيء مع هذا،

247
00:20:46,030 --> 00:20:48,015
نكمل هذا التمرين.

248
00:20:48,015 --> 00:20:50,540
في هذا التمرين، رأينا كيف يمكننا إعداد

249
00:20:50,540 --> 00:20:55,460
خادم ويب بسيط لخدمة المحتوى نيابة عنا.