یک اسکریپت پایتون بنویسید که درخواست GET به https://example.com/api/data با یک هدر سفارشی ارسال کند و اعتبارسنجی گواهی‌نامه سرور را با ssl.CERT_REQUIRED اجباری کند و محتوای پاسخ را چاپ نماید.

4.0 بازدید آخرین ویرایش در 202 روز قبل ساعت 02:35

0.0

برای این مسئله از ماژول‌های استاندارد urllib.request و ssl استفاده کنید: یک ssl.SSLContext بسازید (مثلاً با ssl.create_default_context()) و verify_mode آن را برابر ssl.CERT_REQUIRED قرار دهید و در صورت نیاز با load_default_certs() یا load_verify_locations() مسیر CA را مشخص کنید. سپس با urllib.request.Request هدر سفارشی اضافه کنید و با urllib.request.urlopen(request, context=context) درخواست را بفرستید و محتوای دریافتی را بخوانید و چاپ کنید. نکات: برای مدیریت خطاها از try/except برای ssl.SSLError و urllib.error.URLError استفاده کنید؛ جایگزین ساده‌تر برای مبتدیان استفاده از کتابخانه requests است (پارامتر verify برای مشخص‌کردن CA یا True برای استفاده از CA پیش‌فرض).

توسط پژوهشگر در 202 روز قبل ساعت 02:35
دسته بندی ها: Python Python for beginner
sara در 202 روز قبل ساعت 09:10

برای مبتدی‌ها، استفاده از ssl.create_default_context() و تنظیم verify_mode=ssl.CERT_REQUIRED به شما امکان می‌دهد اعتبار گواهی‌نامه سرور را الزامی کنید. همچنین با load_default_certs() یا load_verify_locations() می‌توانید CAهای معتبر را به context اضافه کنید تا از ریشه‌های معتبر بهره ببرید. هنگام ارسال درخواست از urllib.request.Request با هدر سفارشی و استفاده از urllib.request.urlopen(request, context=context) مطمئن شوید که خطاهای SSL یا URL را در بلوک try/except مدیریت می‌کنید. اگر دنبال ساده‌ترین راه هستید، کتابخانه requests با verify=True گزینه‌ای سریع و استاندارد است، اما آموختن استفاده از ssl و urllib به درک بهتر امنیت شبکه کمک می‌کند.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری