در این مطلب، ویدئو یک وب سرور ساده پایتون برای بازگشت سرصفحه ها و داده های درخواست HTTP با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:10:37
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,160 –> 00:00:02,159
سلام نیک جاناتاکیس در اینجا در این
2
00:00:02,159 –> 00:00:03,600
ویدیو ما می خواهیم یک
3
00:00:03,600 –> 00:00:05,839
اسکریپت پایتون بسیار ابتدایی را بررسی کنیم که منبع باز
4
00:00:05,839 –> 00:00:08,559
آن به نام وب سرور است و کاری که این کار انجام می دهد این است
5
00:00:08,559 –> 00:00:10,559
که یک وب سرور پایتون راه اندازی می کند
6
00:00:10,559 –> 00:00:12,240
و سپس هر زمان که درخواستی
7
00:00:12,240 –> 00:00:13,599
برای آن ارسال می کنید.
8
00:00:13,599 –> 00:00:15,920
هدرها و همچنین هر
9
00:00:15,920 –> 00:00:17,039
داده ای را که به
10
00:00:17,039 –> 00:00:18,960
عنوان بخشی از درخواست ارسال می کنید بازتاب می
11
00:00:18,960 –> 00:00:20,880
دهد و با آن داده ها به عنوان پاسخ http
12
00:00:20,880 –> 00:00:21,600
پاسخ می
13
00:00:21,600 –> 00:00:22,880
دهد اکنون ممکن است فکر کنید وای نیک
14
00:00:22,880 –> 00:00:24,320
این تقریباً بی فایده ترین
15
00:00:24,320 –> 00:00:25,519
چیزی است که من دارم تا به حال شنیده بودم
16
00:00:25,519 –> 00:00:27,119
و چند روز پیش با شما موافق بودم،
17
00:00:27,119 –> 00:00:29,519
اما همانطور که معلوم شد این
18
00:00:29,519 –> 00:00:30,320
19
00:00:30,320 –> 00:00:32,479
یک چیز بسیار مهم بود و اکنون
20
00:00:32,479 –> 00:00:34,160
ابزاری در محیط توسعه من برای
21
00:00:34,160 –> 00:00:34,800
استفاده است،
22
00:00:34,800 –> 00:00:36,480
بنابراین اخیراً در حال انجام کارهای قراردادی
23
00:00:36,480 –> 00:00:39,120
بودم و من من مسئول ایجاد
24
00:00:39,120 –> 00:00:41,440
این سرویس یک فلاسک هستم و بخشی از
25
00:00:41,440 –> 00:00:42,399
کاری که باید انجام دهم
26
00:00:42,399 –> 00:00:45,200
ارسال یک پاسخ هوک وب به سرویس دیگری است
27
00:00:45,200 –> 00:00:46,079
،
28
00:00:46,079 –> 00:00:48,239
اما من اصلاً کنترلی روی آن
29
00:00:48,239 –> 00:00:49,840
سرویس ندارم، بنابراین چیزی نیست که من در
30
00:00:49,840 –> 00:00:50,559
حال
31
00:00:50,559 –> 00:00:52,320
توسعه آن هستم، بلکه توسط یک سرویس دیگر توسعه داده شده است. تیم آن را
32
00:00:52,320 –> 00:00:53,360
نوشته است n در یک زبان برنامه نویسی کاملاً متفاوت،
33
00:00:53,360 –> 00:00:54,640
34
00:00:54,640 –> 00:00:56,960
من آن را به صورت محلی اجرا نمی کنم، اما
35
00:00:56,960 –> 00:00:58,160
می خواستم مطمئن شوم که
36
00:00:58,160 –> 00:01:00,719
وقتی درخواست وب هوک خود را ارسال می کنم،
37
00:01:00,719 –> 00:01:02,320
38
00:01:02,320 –> 00:01:04,159
هدرهای uh صحیح و داده ها را داشته باشد، شما
39
00:01:04,159 –> 00:01:05,519
اساساً بار بار را می شناسید و
40
00:01:05,519 –> 00:01:07,600
این همان جایی است که من آن را دریافت کردم. ایده
41
00:01:07,600 –> 00:01:08,720
ایجاد اسکریپت
42
00:01:08,720 –> 00:01:09,840
اکنون ما نمیخواهیم
43
00:01:09,840 –> 00:01:11,760
زمان زیادی را در اینجا صرف کنیم، اما میدانید که این یک
44
00:01:11,760 –> 00:01:13,520
اسکریپت پایتون فوقالعاده اساسی است که فقط از
45
00:01:13,520 –> 00:01:14,240
46
00:01:14,240 –> 00:01:16,799
وب سرور داخلی uh python استفاده میکند و برای دریافت
47
00:01:16,799 –> 00:01:18,320
و ارسال درخواستها گوش میدهد و سپس اساساً
48
00:01:18,320 –> 00:01:19,439
فقط هدر را بازتاب می
49
00:01:19,439 –> 00:01:21,360
دهد و همچنین می دانید
50
00:01:21,360 –> 00:01:22,880
داده های بدنه ارسال شده را
51
00:01:22,880 –> 00:01:24,560
می شناسید، همچنین می دانید که در اینجا مواردی وجود دارد که می خواهند
52
00:01:24,560 –> 00:01:26,000
53
00:01:26,000 –> 00:01:28,080
آرگومان های خط فرمان را تجزیه و تحلیل کنند، زیرا اگر
54
00:01:28,080 –> 00:01:29,600
از پیش فرض پورت لوکال هاست 8008 خوشتان نمی آید،
55
00:01:29,600 –> 00:01:30,799
56
00:01:30,799 –> 00:01:32,159
همیشه می توانید آن را سفارشی کنید. فقط با
57
00:01:32,159 –> 00:01:34,159
58
00:01:34,159 –> 00:01:35,439
نامگذاری متفاوت آن میدانید که من در این مورد شدیداً نگران هستم زیرا واقعاً نمیخواهم
59
00:01:35,439 –> 00:01:35,920
60
00:01:35,920 –> 00:01:37,119
زمان زیادی
61
00:01:37,119 –> 00:01:39,360
را صرف مرور کد پایتون کنم.
62
00:01:39,360 –> 00:01:40,000
63
00:01:40,000 –> 00:01:42,240
64
00:01:42,240 –> 00:01:45,040
درگاه لوکال هاست 808.
65
00:01:45,040 –> 00:01:47,439
اکنون نمونه برنامه ای ندارم
66
00:01:47,439 –> 00:01:48,960
که بتوانم به شما نشان دهم که کجا می فرستم
67
00:01:48,960 –> 00:01:50,479
مانند یک درخواست وب هوک، می دانید
68
00:01:50,479 –> 00:01:51,680
که از چیزی مانند
69
00:01:51,680 –> 00:01:53,920
کتابخانه درخواست با پایتون استفاده می کند و
70
00:01:53,920 –> 00:01:55,200
71
00:01:55,200 –> 00:01:57,280
زبان های برنامه نویسی زیادی را می شناسید. یک یا دو
72
00:01:57,280 –> 00:01:59,119
کلاینت http بسیار محبوب دارید که می توانید از آنها استفاده کنید،
73
00:01:59,119 –> 00:02:00,960
اما برای این مورد، بیایید فقط از curl استفاده کنیم
74
00:02:00,960 –> 00:02:02,399
زیرا curl
75
00:02:02,399 –> 00:02:05,119
بسیار عمومی و فوق العاده مفید است، بنابراین بیایید
76
00:02:05,119 –> 00:02:07,119
فقط یک تست curler را در اینجا به آن وب
77
00:02:07,119 –> 00:02:07,520
سرور ارسال
78
00:02:07,520 –> 00:02:09,598
کنیم و می توانیم فوراً ببینیم که دریافت می کنیم
79
00:02:09,598 –> 00:02:11,280
برخی از اطلاعات در مورد درخواست این
80
00:02:11,280 –> 00:02:12,959
در واقع توسط وب سرور داخلی پایتون ارائه شده است،
81
00:02:12,959 –> 00:02:14,480
ما میتوانیم ببینیم که در حال
82
00:02:14,480 –> 00:02:15,680
ارسال یک درخواست دریافت
83
00:02:15,680 –> 00:02:17,680
به آدرس اصلی هستیم، کد وضعیت
84
00:02:17,680 –> 00:02:19,599
200 داریم و مانند اینجا
85
00:02:19,599 –> 00:02:21,520
تمام هدرهایی است که ارسال شده است. بنابراین
86
00:02:21,520 –> 00:02:22,959
میتوانیم ببینیم که user agent به
87
00:02:22,959 –> 00:02:24,720
طور خودکار روی curl تنظیم میشود، زیرا curl
88
00:02:24,720 –> 00:02:26,080
به طور پیشفرض این کار را انجام میدهد،
89
00:02:26,080 –> 00:02:28,239
اما شما میدانید که با curl نیز میتوانیم کارهایی را
90
00:02:28,239 –> 00:02:30,239
انجام دهیم که میدانید نوع محتوا
91
00:02:30,239 –> 00:02:31,200
را
92
00:02:31,200 –> 00:02:33,360
برنامه json تنظیم کنید و فقط همان
93
00:02:33,360 –> 00:02:35,280
درخواست را اینجا و اکنون ارسال کنید. ما میتوانید ببینید
94
00:02:35,280 –> 00:02:37,360
که این هدر نوع محتوا ارسال شده است
95
00:02:37,360 –> 00:02:39,360
و میدانید که ما میتوانیم مواردی را نیز
96
00:02:39,360 –> 00:02:40,560
به این
97
00:02:40,560 –> 00:02:42,560
آدرس اینترنتی اصلی اضافه کنیم، همچنین میدانید که میتوانیم
98
00:02:42,560 –> 00:02:43,599
چیزی مانند
99
00:02:43,599 –> 00:02:45,519
یک رشته جستجو را در آنجا اضافه کنیم
100
00:02:45,519 –> 00:02:47,200
و اطلاعات رشته جستجو
101
00:02:47,200 –> 00:02:48,400
را به شما برمیگردانیم. میخواستم مانند یک
102
00:02:48,400 –> 00:02:50,480
درخواست دریافت آزمایش کنم که بسیار مفید خواهد بود،
103
00:02:50,480 –> 00:02:53,519
بله، پس حالا بیایید به اینجا برگردیم
104
00:02:53,519 –> 00:02:55,599
و شاید به جای درخواست دریافت، یک درخواست پست ارسال کنیم
105
00:02:55,599 –> 00:02:56,720
106
00:02:56,720 –> 00:02:58,640
و برای آن بیایید ادامه دهیم و فقط
107
00:02:58,640 –> 00:02:59,920
پست ارسال کنیم
108
00:02:59,920 –> 00:03:02,400
و سپس میتوانیم اطلاعات خود را ارسال کنیم. بنابراین
109
00:03:02,400 –> 00:03:03,840
این برخی از دادههای json است که ما ارسال میکنیم
110
00:03:03,840 –> 00:03:04,560
111
00:03:04,560 –> 00:03:07,200
اوه، بیایید با اوه برویم، ببینیم شاید
112
00:03:07,200 –> 00:03:08,159
با یک فو
113
00:03:08,159 –> 00:03:11,440
و یک نوار در اینجا برویم و این باید
114
00:03:11,440 –> 00:03:12,879
یک سرصفحه جدید را در اینجا به ما بازگرداند زیرا
115
00:03:12,879 –> 00:03:14,879
طول محتوا را داریم 13 کاراکتر
116
00:03:14,879 –> 00:03:15,440
طول
117
00:03:15,440 –> 00:03:17,920
دارد، اما متن درست همان دادههایی است
118
00:03:17,920 –> 00:03:19,519
که ما ارسال میکردیم و در آنجا به
119
00:03:19,519 –> 00:03:21,040
عنوان بخشی از پاسخ ما است،
120
00:03:21,040 –> 00:03:22,800
بنابراین میدانید که اگر یک قلاب اینترنتی ارسال
121
00:03:22,800 –> 00:03:24,000
میکنید، مثل این است که اکنون یک پیشخدمت دارید که
122
00:03:24,000 –> 00:03:25,680
به آن نگاهی بیاندازد.
123
00:03:25,680 –> 00:03:27,200
مطمئن شوید که محموله نیز درست
124
00:03:27,200 –> 00:03:28,000
است سرصفحه ها
125
00:03:28,000 –> 00:03:30,319
درست است، ممکن است انتخاب کنید که سرصفحه های دیگر
126
00:03:30,319 –> 00:03:31,760
را نیز مانند یک توکن حامل مجوز وارد کنید،
127
00:03:31,760 –> 00:03:33,120
مثل اینکه می دانید هر چه می خواهید، این
128
00:03:33,120 –> 00:03:34,159
واقعاً به برنامه شما بستگی دارد،
129
00:03:34,159 –> 00:03:36,879
اما اوه اکنون اجازه دهید به
130
00:03:36,879 –> 00:03:38,879
131
00:03:38,879 –> 00:03:40,799
این موضوع بپردازیم، بنابراین استفاده از حلقه هایی مانند این به نوعی
132
00:03:40,799 –> 00:03:42,319
خوب است. روشی برای درست تست کردن چیزها این
133
00:03:42,319 –> 00:03:43,519
واقعاً ربطی به
134
00:03:43,519 –> 00:03:44,480
135
00:03:44,480 –> 00:03:46,560
خود اسکریپت وب سرور ندارد، اما ممکن است متوجه شوید
136
00:03:46,560 –> 00:03:47,920
که در عمل این کار را انجام
137
00:03:47,920 –> 00:03:49,760
می دهید، تایپ کردن مانند
138
00:03:49,760 –> 00:03:51,920
یک رشته json واقعاً طولانی در اینجا بسیار دشوار است،
139
00:03:51,920 –> 00:03:52,720
مانند تصور کنید
140
00:03:52,720 –> 00:03:54,400
اگر من 15 کلید داشتم. و آنها تودرتو شده بودند، طوری
141
00:03:54,400 –> 00:03:55,840
که هیچ کس نمی خواهد آن
142
00:03:55,840 –> 00:03:56,879
را در خط فرمان تایپ کند،
143
00:03:56,879 –> 00:03:58,640
بنابراین curl این روش را دارد که می توانید فقط
144
00:03:58,640 –> 00:04:01,519
یک فایل را مانند یک فایل test.json در اینجا ارسال
145
00:04:01,519 –> 00:04:02,080
کنید
146
00:04:02,080 –> 00:04:05,120
و من در واقع قبل از
147
00:04:05,120 –> 00:04:06,959
ایجاد این ویدیو این کار را کردم. یک
148
00:04:06,959 –> 00:04:10,640
فایل test.json کوچک و تمام آن چیزی که در اینجا دارد،
149
00:04:10,640 –> 00:04:12,640
یک سلام دنیا را می شناسید، بنابراین ما فقط
150
00:04:12,640 –> 00:04:14,000
آن را در اینجا پاس می کنیم و پاسخ آن را دریافت می کنیم،
151
00:04:14,000 –> 00:04:14,879
152
00:04:14,879 –> 00:04:16,079
بنابراین تصور کنید اگر به تازگی
153
00:04:16,079 –> 00:04:18,000
در حال توسعه بودید، می دانید یک باری
154
00:04:18,000 –> 00:04:20,079
که می خواهید. تا قرار دهید و
155
00:04:20,079 –> 00:04:21,759
شاید 12 کلید وجود داشته باشد و آنها تو در تو هستند
156
00:04:21,759 –> 00:04:23,040
و انواع چیزهایی مانند آن،
157
00:04:23,040 –> 00:04:24,240
شما می دانید که می توانید آنها را در
158
00:04:24,240 –> 00:04:26,320
این فایل بیندازید و سپس خوب است که
159
00:04:26,320 –> 00:04:26,960
بروید، اما من
160
00:04:26,960 –> 00:04:28,639
در واقع آن یکی را حذف می کنم. اکنون
161
00:04:28,639 –> 00:04:30,880
به دلیل اینکه ما دیگر به آن فایل نیاز
162
00:04:30,880 –> 00:04:32,560
نداریم، اکنون فقط به ارسال
163
00:04:32,560 –> 00:04:34,240
شما محدود نمیشویم که برنامه json را نیز بفرستیم، مانند
164
00:04:34,240 –> 00:04:35,680
این وب سرور،
165
00:04:35,680 –> 00:04:38,720
درخواستهای uh دیگر را نیز میپذیرد، بنابراین اگر
166
00:04:38,720 –> 00:04:39,759
به اینجا برگردم
167
00:04:39,759 –> 00:04:42,880
و این را به نوع محتوا تغییر دهم.
168
00:04:42,880 –> 00:04:43,919
اون یکی چیه
169
00:04:43,919 –> 00:04:45,280
مثل اینکه شما دارید مثل
170
00:04:45,280 –> 00:04:47,120
فرم ارسالی میفرستید درست مثل اینکه json نیست
171
00:04:47,120 –> 00:04:47,919
من در واقع
172
00:04:47,919 –> 00:04:49,520
فعلاً این رو حذف میکنم چون
173
00:04:49,520 –> 00:04:51,280
مطمئنم که curl به صورت پیشفرض این رو تنظیم میکنه
174
00:04:51,280 –> 00:04:54,240
اما اگر پستی با موارد مختلف ارسال کنیم
175
00:04:54,240 –> 00:04:56,000
دادهها حالا مثلاً فرض کنید در
176
00:04:56,000 –> 00:04:57,520
این نوع قالب است، درست
177
00:04:57,520 –> 00:05:00,400
مانند user uh nick یا چیزی شبیه به آن،
178
00:05:00,400 –> 00:05:00,800
سپس
179
00:05:00,800 –> 00:05:02,560
میتوانیم ببینیم که آن را به عنوان
180
00:05:02,560 –> 00:05:04,160
پاسخ دریافت میکنیم، میدانید که دادههای ما هستند
181
00:05:04,160 –> 00:05:05,759
و بله، این نوع محتوا درست است،
182
00:05:05,759 –> 00:05:07,199
اگر شما نیستید. ارسال json اگر دقیقاً
183
00:05:07,199 –> 00:05:08,320
مانند یک فرم معمولی باشد
184
00:05:08,320 –> 00:05:11,199
پس ap است هیچ کس
185
00:05:11,199 –> 00:05:12,639
به یاد نمی آورد که از ابتدا حداقل من
186
00:05:12,639 –> 00:05:13