1
00:00:00,000 --> 00:00:04,514
[MUSIC]

2
00:00:04,514 --> 00:00:09,803
في هذا التمرين، سننظر في استخدام جلسات Express.

3
00:00:09,803 --> 00:00:13,115
سنقوم بإعداد الوسيطة للجلسات السريعة،

4
00:00:13,115 --> 00:00:16,356
ثم تخزين ملف الجلسات السريعة الوسيطة.

5
00:00:16,356 --> 00:00:21,315
ثم قم بإعداد تطبيقنا لاستخدام جلسات صريحة بدلاً من

6
00:00:21,315 --> 00:00:25,885
استخدام ملفات تعريف الارتباط الخاصة بهم كما فعلنا في التمرين السابق.

7
00:00:25,885 --> 00:00:30,870
سنرى أيضًا كيفية تعقب معلومات الجلسة نفسها تحت

8
00:00:30,870 --> 00:00:32,145
جانب الخادم.

9
00:00:33,750 --> 00:00:36,556
للبدء في هذا التمرين،

10
00:00:36,556 --> 00:00:40,672
انتقل إلى مجلد ConfusionServer في المحطة الطرفية أو

11
00:00:40,672 --> 00:00:45,643
نافذة الأوامر، ثم دعنا نقم بتثبيت جلسة Express-sion.

12
00:00:45,643 --> 00:00:52,672
للقيام بذلك، اكتب npm install Express-session،

13
00:00:52,672 --> 00:00:56,678
ثم مخزن ملف الجلسة.

14
00:00:58,792 --> 00:01:03,320
لأننا سنستخدم مخزن الملفات لاستمرار معلومات الجلسة.

15
00:01:03,320 --> 00:01:08,623
لذلك سيتم تثبيت مخزن الجلسة في وحدة هنا لهذا الغرض.

16
00:01:08,623 --> 00:01:13,399
بمجرد تثبيت كل من هذه، وكما ترون الآن،

17
00:01:13,399 --> 00:01:17,008
أستخدم جلسة صريحة 1.15.6

18
00:01:17,008 --> 00:01:21,430
وتخزين ملف الجلسة 1.2.0 في هذه الدورة.

19
00:01:21,430 --> 00:01:26,397
بمجرد تثبيت كل منهما، دعنا نذهب إلى تطبيق ConfusionServer الخاص بنا.

20
00:01:27,510 --> 00:01:31,868
الذهاب إلى تطبيق ConfusionServer

21
00:01:31,868 --> 00:01:36,921
، هنا، دعونا الآن استيراد جلسة التعبير.

22
00:01:36,921 --> 00:01:44,414
لذلك سنقول، جلسة فار تتطلب، جلسة صريحة.

23
00:01:46,639 --> 00:01:53,560
و فار فيليستور = تتطلب

24
00:01:53,560 --> 00:01:59,908
جلسة -ملف مخزن.

25
00:02:02,812 --> 00:02:07,064
وهذا يأخذ الجلسة كمعلمات لها،

26
00:02:07,064 --> 00:02:13,830
هذه الجلسة تشير إلى هذا الذي قمنا باستيراده للتو هنا.

27
00:02:13,830 --> 00:02:18,970
الآن بمجرد القيام بذلك، ثم نذهب إلى رمزنا هنا،

28
00:02:18,970 --> 00:02:22,490
وبعد ذلك سنرى بدلا من كوكيبارسر.

29
00:02:22,490 --> 00:02:26,598
لذلك أنا ذاهب للتعليق على كوكيبارسر من هناك،

30
00:02:26,598 --> 00:02:33,401
وبعد ذلك سوف تستخدم الآن، جلسة هنا.

31
00:02:36,481 --> 00:02:41,823
وبعد ذلك، سنقوم بإعداد الجلسة مع

32
00:02:41,823 --> 00:02:47,175
الخيارات المختلفة، سنقول الاسم،

33
00:02:50,402 --> 00:02:56,909
أنا فقط باستخدام معرف جلسة عشوائي هنا، وبعد ذلك، سر.

34
00:02:58,871 --> 00:03:02,880
سأستخدم السر الذي استخدمته في وقت سابق

35
00:03:02,880 --> 00:03:06,493
لذلك اسمحوا لي فقط نسخ تلك السلسلة هناك.

36
00:03:06,493 --> 00:03:11,981
ثم، حفظ، تشغيل، حفظ

37
00:03:13,422 --> 00:03:21,119
غير مهيأ حفظ كاذبة.

38
00:03:27,180 --> 00:03:28,390
إعادة الحفظ، كاذبة.

39
00:03:28,390 --> 00:03:32,198
الأطروحات لن تجعل مختلفة كثيرا عن التطبيق البسيط الذي نكتبه في

40
00:03:32,198 --> 00:03:33,330
هذه اللحظة.

41
00:03:33,330 --> 00:03:37,604
وبعد ذلك سنقول أن المتجر جديد،

42
00:03:39,643 --> 00:03:42,497
FileStore الذي أعلنناه في وقت سابق.

43
00:03:45,441 --> 00:03:46,330
هذا كل شيء

44
00:03:46,330 --> 00:03:53,330
الآن يتم إعداد الوسيطة جلسة العمل الخاصة بي للاستفادة من تطبيقنا.

45
00:03:53,330 --> 00:03:58,295
الآن، كما ذكرت، فإن هذه الوسيطة الدورة إضافة هذا

46
00:03:58,295 --> 00:04:03,560
req.session إلى رسالة الطلب،

47
00:04:03,560 --> 00:04:08,630
لذلك سأقوم بعمل سجل وحدة التحكم من req.session فقط لمعرفة ما يحتوي عليه.

48
00:04:08,630 --> 00:04:13,910
ثم، أسفل هنا، بدلا من التحقق من ريق تعيين ملفات تعريف الارتباط المستخدم،

49
00:04:13,910 --> 00:04:18,370
وأنا ذاهب للتحقق من req.session.user هنا.

50
00:04:19,390 --> 00:04:23,620
وبعد ذلك، سنلقي نظرة على رأس التفويض، وهلم جرا.

51
00:04:23,620 --> 00:04:27,460
كل هذا الجزء سيبقى بالضبط كما كان من قبل.

52
00:04:27,460 --> 00:04:32,760
ولكن هنا، بدلاً من إعداد ملف تعريف الارتباط، ما سأقوم بإعداده هنا هو،

53
00:04:32,760 --> 00:04:38,052
بدلاً من إعداد ملف تعريف الارتباط، لذلك بدلاً من استخدام res.cookie هنا،

54
00:04:38,052 --> 00:04:45,470
سنقول، req.session.user = إلى 'admin'.

55
00:04:45,470 --> 00:04:50,030
لذلك سنقوم بإعداد خاصية المستخدم على

56
00:04:50,030 --> 00:04:55,510
جلسة req-session إلى المشرف هنا، ثم المضي قدما من هذه النقطة.

57
00:04:55,510 --> 00:04:59,090
وبالتالي فإن بقية التعليمات البرمجية هنا سوف تبقى بالضبط كما كان من قبل،

58
00:04:59,090 --> 00:05:01,030
لن يكون هناك أي تغيير هنا.

59
00:05:01,030 --> 00:05:06,240
وقبول هناك حق، ونحن في طريقنا إلى التحقق من req.session،

60
00:05:09,462 --> 00:05:11,770
المستخدم، هو المشرف أم لا؟

61
00:05:11,770 --> 00:05:14,340
إذن هذا هو الشيك الذي سنقوم به هنا

62
00:05:14,340 --> 00:05:15,360
هذا كل شيء

63
00:05:15,360 --> 00:05:18,820
هذه هي التغييرات التي نحتاج إلى القيام بها على

64
00:05:18,820 --> 00:05:23,850
طلبنا من أجل استخدام الجلسات في مكان ملفات تعريف الارتباط الموقعة.

65
00:05:23,850 --> 00:05:30,040
دعونا حفظ التغييرات ومن ثم ننظر إلى هذا الإصدار من الخادم السريع لدينا.

66
00:05:30,040 --> 00:05:34,480
بالعودة إلى طرفنا أو نافذة الأوامر، دعنا نعيد تشغيل

67
00:05:35,600 --> 00:05:39,860
الخادم الخاص بنا، إذا كنت الخادم قيد التشغيل، فقط قم بإيقافه وأعد تشغيل الخادم.

68
00:05:40,870 --> 00:05:42,730
وبعد ذلك بمجرد تشغيل الخادم،

69
00:05:42,730 --> 00:05:48,600
سنذهب إلى ساعي البريد ونفعل إذا طلبت ذلك.

70
00:05:48,600 --> 00:05:56,350
الذهاب إلى ساعي البريد، دعني أوضح كل هذه الأشياء،

71
00:05:56,350 --> 00:06:01,970
سنقوم بمسح الرؤوس، سنقوم بمسح التفويض.

72
00:06:01,970 --> 00:06:03,630
ثم سأذهب إلى ملفات تعريف الارتباط،

73
00:06:03,630 --> 00:06:08,540
وسأقوم بحذف ملف تعريف ارتباط المستخدم هذا، لأن ملف تعريف الارتباط هذا لم يعد صالحًا.

74
00:06:08,540 --> 00:06:16,030
وبعد ذلك، دعونا نرسل طلب الحصول على، أطباق المضيف المحلية.

75
00:06:16,030 --> 00:06:21,160
وبعد ذلك كما نتوقع، يعود قائلا، أنت غير مصدق.

76
00:06:21,160 --> 00:06:24,520
الآن، لذلك دعونا مصادقة أنفسنا باستخدام المصادقة الأساسية.

77
00:06:24,520 --> 00:06:29,483
لذلك سنقول، المشرف، كلمة المرور.

78
00:06:29,483 --> 00:06:32,223
وبعد ذلك سنقوم بتحديث الطلب ومن

79
00:06:32,223 --> 00:06:35,740
ثم سنرسل طلب GET إلى نفس النقطة.

80
00:06:35,740 --> 00:06:39,400
وبعد ذلك، نحصل على الرد مرة أخرى من جانب الخادم لدينا.

81
00:06:39,400 --> 00:06:46,000
الآن، لاحظ أنه في الرؤوس، والآن سترى مرة أخرى أنه قال ملف تعريف الارتباط هنا.

82
00:06:46,000 --> 00:06:52,500
الآن هذا كان سببه مخزن الجلسة هنا.

83
00:06:52,500 --> 00:06:57,492
وعندما تنظر إلى ملفات تعريف الارتباط، ترى أنه كان هناك ملف تعريف ارتباط آخر تم

84
00:06:57,492 --> 00:07:02,570
إعداده هنا والاسم هو معرف الجلسة.

85
00:07:02,570 --> 00:07:06,398
لذلك هذا هو الاسم الذي نعطيه لجلستنا هناك، لذلك

86
00:07:06,398 --> 00:07:09,744
هذا هو معرف الجلسة الذي نستخدمه هنا.

87
00:07:11,172 --> 00:07:16,880
وإذا نقرت على ملفات تعريف الارتباط، ستلاحظ أن معرف الجلسة موجود هناك.

88
00:07:16,880 --> 00:07:22,102
وبعد ذلك، هذه هي تفاصيل ما هو داخل ملف تعريف الارتباط هناك.

89
00:07:22,102 --> 00:07:26,816
حتى تتمكن من ملاحظة مجموعة كاملة من المعلومات وتاريخ انتهاء صلاحية

90
00:07:26,816 --> 00:07:28,940
ملف تعريف الارتباط، وهلم جرا.

91
00:07:28,940 --> 00:07:33,703
قد لا يكون هذا منطقيًا بالنسبة لك في هذه اللحظة، ولكنه موجود هناك.

92
00:07:33,703 --> 00:07:38,110
الآن، اسمحوا لي أن أوضح التفويض.

93
00:07:38,110 --> 00:07:42,140
وأيضًا من الرأس، دعني أزيل رأس التفويض هذا.

94
00:07:42,140 --> 00:07:45,312
وبعد ذلك سأعيد إرسال الطلب،

95
00:07:45,312 --> 00:07:51,094
وستلاحظ أن هذا الطلب سيتم خدمته بشكل صحيح حتى الآن.

96
00:07:51,094 --> 00:07:54,061
بسبب حقيقة أن ملف تعريف الارتباط هذا موجود،

97
00:07:54,061 --> 00:07:58,250
وسيتم تضمين ملف تعريف الارتباط هذا في الطلب الصادر.

98
00:07:58,250 --> 00:08:01,400
وسيقوم جانب الخادم بتعيين هذا إلى الجلسة المناسبة.

99
00:08:02,922 --> 00:08:07,375
وهكذا، يدرك الخادم أن هذا مستخدم معتمد

100
00:08:07,375 --> 00:08:10,042
وسيرسل الرد مرة أخرى.

101
00:08:10,042 --> 00:08:17,004
الآن الذهاب إلى وحدة تحكم الخادم لدينا في المحطة الطرفية أو نافذة الأوامر,

102
00:08:17,004 --> 00:08:23,080
لاحظت أن, المعلومات التي يتم طباعتها على جانب الخادم.

103
00:08:23,080 --> 00:08:27,460
لذا انظر، أنت تتذكر أنني كنت أقوم بتسجيل جلسة req.session هنا.

104
00:08:27,460 --> 00:08:30,780
لذلك هذا هو المكان الذي يحتوي req.session في البداية.

105
00:08:30,780 --> 00:08:36,940
ثم تقول، أطباق GET لأحد غير صالح.

106
00:08:36,940 --> 00:08:43,620
عند هذه النقطة، تقوم بإرسال رأس التفويض المناسب هناك.

107
00:08:43,620 --> 00:08:48,365
وهكذا نجاح طلبك بشكل صحيح.

108
00:08:48,365 --> 00:08:53,080
لكن المذكرة, ما يجري وضعه في الدورة في الطلب التالي.

109
00:08:53,080 --> 00:08:58,080
أذكر أنني أزلت رأس الأذونات ثم أرسل الطلب.

110
00:08:58,080 --> 00:09:00,960
ولكن لاحظ ما يحتوي عليه rec.session هنا.

111
00:09:00,960 --> 00:09:03,088
لاحظ على وجه الخصوص

112
00:09:03,088 --> 00:09:08,129
أنه يحتوي الآن على حقل المستخدم هذا مع المشرف في مكانه هناك.

113
00:09:09,280 --> 00:09:15,120
لذلك هذا هو ما يتلقاه الخادم من جانب العميل في ملف تعريف الارتباط.

114
00:09:15,120 --> 00:09:18,690
ويحتوي ملف تعريف الارتباط نفسه على كل هذه المعلومات هنا.

115
00:09:18,690 --> 00:09:22,987
وهكذا، يتعرف الخادم على أن هذا مستخدم صالح،

116
00:09:22,987 --> 00:09:27,249
ثم يرسل النتائج من جانب الخادم.

117
00:09:27,249 --> 00:09:28,337
الذهاب إلى ساعي البريد،

118
00:09:28,337 --> 00:09:32,220
دعونا نلقي نظرة مرة أخرى على تفاصيل ما هو داخل ملف تعريف الارتباط.

119
00:09:32,220 --> 00:09:34,137
لذلك عند فتح ملف تعريف الارتباط هنا،

120
00:09:34,137 --> 00:09:39,103
سترى مرة أخرى كل تفاصيل المعلومات داخل ملف تعريف الارتباط هنا.

121
00:09:39,103 --> 00:09:43,026
إذا نظرت إلى المحرر، فسترى الآن أنه في المحرر الخاص بك،

122
00:09:43,026 --> 00:09:48,140
يوجد مجلد جديد هنا يسمى الجلسات التي تم إنشاؤها هنا.

123
00:09:48,140 --> 00:09:52,320
الآن هذا لأننا كنا نستخدم مخزن الملفات

124
00:09:52,320 --> 00:09:54,130
لتتبع جميع جلساتنا.

125
00:09:54,130 --> 00:09:58,180
الآن هذا هو أحد الأسباب التي تجعلني أستخدم مخزن الملفات حتى أتمكن من إظهار ما

126
00:09:58,180 --> 00:10:03,320
يتم تخزينه في ملف جلسة عمل على جانب الخادم الخاص بي.

127
00:10:03,320 --> 00:10:08,430
حتى إذا قمت بفتح هذا الملف هنا مع الاسم الطويل هناك،

128
00:10:08,430 --> 00:10:13,890
سترى في الداخل هناك، يتم تخزين معلومات الجلسة هنا.

129
00:10:13,890 --> 00:10:19,460
لذلك إذا قمت باستعراض معلومات جلسة العمل هذه، لاحظ على وجه الخصوص،

130
00:10:19,460 --> 00:10:22,880
هذا الحقل الأولي الموجود في جانب الخادم.

131
00:10:22,880 --> 00:10:27,930
لذلك هذا هو المكان الذي يتتبع فيه الخادم كل هذه المعلومات على جانب الخادم.

132
00:10:27,930 --> 00:10:32,650
الآن يتم التعرف على ملف تعريف الارتباط هذا نفسه من قبل الخادم،

133
00:10:32,650 --> 00:10:36,630
لأن العميل يتضمن ملف تعريف الارتباط هذا في الطلب الوارد.

134
00:10:36,630 --> 00:10:41,330
الآن أنها قادرة على الذهاب إلى مخزن الجلسات ومن ثم استرداد المعلومات،

135
00:10:41,330 --> 00:10:44,870
ومن ثم تحميل هذا على req.sessions.

136
00:10:44,870 --> 00:10:49,800
وبالتالي، يحتوي req.session على هذه المعلومات

137
00:10:49,800 --> 00:10:54,810
الخاصة التي يستخدمها الخادم الخاص بي للتحقق للتأكد من أن

138
00:10:54,810 --> 00:10:57,710
موكلي عميل معتمد.

139
00:10:57,710 --> 00:11:00,010
هذا هو حول الجلسات.

140
00:11:00,010 --> 00:11:03,230
مع هذا، نكمل هذا التمرين.

141
00:11:03,230 --> 00:11:04,100
في هذا التمرين،

142
00:11:04,100 --> 00:11:08,630
رأينا كيف يمكننا إعداد طلبنا الصريح لاستخدام الجلسات.

143
00:11:08,630 --> 00:11:13,751
ورأينا أيضا كيف نستخدم مخزن الملفات لتتبع جلساتنا.

144
00:11:13,751 --> 00:11:18,360
هذا هو الوقت المناسب بالنسبة لك للقيام بتعليق GET مع

145
00:11:18,360 --> 00:11:22,291
الرسالة التعبير عن جلسات الجزء الأول.

146
00:11:22,291 --> 00:11:25,521
[ موسيقى]