یک تابع پایتون بنویس که یک رشته شامل هدرهای خام یک درخواست WebSocket (خطوط HTTP) را دریافت کند و هدرها را به صورت یک دیکشنری با کلیدهای حروفِ کوچک و مقادیر ستر شده بازگرداند و علاوه بر آن مقدار هدر Sec-WebSocket-Key را جداگانه برگرداند.
3.0 بازدید آخرین ویرایش در 203 روز قبل ساعت 02:41 0.0
برای حل این مسئله میتوانید رشته را با splitlines() به خطوط تقسیم کنید، خط اول (خط درخواست مثل "GET ...") را نادیده بگیرید و برای هر خط دیگر آن را با split(':', 1) جدا کنید، نام هدر را با lower() و مقدار را با strip() پاکسازی کنید و در یک دیکشنری ذخیره کنید. از بررسی خطوط خالی و مدیریت مواردی که هدر ممکن است چندمقداره باشد یا مقدار خالی داشته باشد غافل نشوید؛ نیازی به کتابخانه خارجی نیست اما میتوانید برای الگوهای پیچیده از re استفاده کنید. در انتها مقدار دیکشنری برای کلید 'sec-websocket-key' را برگردانید یا None اگر وجود نداشت.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای پیادهسازی، رشته را با splitlines() تقسیم کن، خط اول درخواست را نادیده بگیر و هر خط دیگر را با split(':', 1) جدا کن تا نام هدر و مقدارش استخراج شود. نام هدر را به lowercase تبدیل کن و مقدار را با strip() تمیز کن و در یک دیکشنری ذخیره کن، به مدیریت خطوط خالی یا خطوط ادامهدار توجه کن تا هدرها به درستی جمعآوری شوند. مقدار کلید sec-websocket-key را جدا نگه دار و در پایان همان مقدار را بازگردان یا None بده اگر وجود ندارد.
گزارش