یک لایه نقشه از طریق پروکسی دفتر بارگذاری می‌شود، در حالی که فراخوانی API یک افزونه شکست می‌خورد. هر دو عمل درون QGIS اجرا می‌شوند، اما ممکن است از کلاینت‌های HTTP متفاوتی استفاده کنند.

QGIS برای عملیات شبکه QgsNetworkAccessManager را ارائه می‌دهد. این مدیر پیکربندی شبکه QGIS را به درخواست‌هایی که از طریق آن انجام می‌شوند منتقل می‌کند. یک افزونه Python که Requests را وارد می‌کند، کلاینت دیگری با رفتار پروکسی و احراز هویت خودش ایجاد می‌کند.

پیکربندی‌ای را انتخاب کنید که می‌خواهید به اشتراک بگذارید

برای افزونه‌ای که قرار است از ترجیحات شبکه QGIS کاربر پیروی کند، استفاده از مدیر شبکه QGIS از بازسازی مستقل آن ترجیحات جلوگیری می‌کند. API مناسب برای نسخه QGIS که پشتیبانی می‌کنید را بررسی کنید، از جمله رفتار ناهمگام و یکپارچگی احراز هویت آن.

اگر Requests به دلیل دیگری لازم است، آن را آگاهانه پیکربندی کنید. دیکشنری پروکسی آن و مدیریت محیط از مستندات Requests پیروی می‌کنند. پروکسی‌ای که در تنظیمات QGIS انتخاب می‌شود به‌طور خودکار تنظیم نشست Requests نیست.

هنگام آزمایش نمونه‌های Qt از یک انجمن، درباره دامنه دقیق باشید. تنظیم پروکسی برنامه Qt بر شبکه Qt اثر می‌گذارد. این ثابت نمی‌کند که Requests، که از پیاده‌سازی شبکه دیگری استفاده می‌کند، مسیر خود را تغییر داده است.

همان مقصد را مقایسه کنید

هنگام مقایسه رفتار، از URL افزونه‌ای که شکست می‌خورد استفاده کنید. یک سرویس نقشه و یک API نامرتبط می‌توانند قواعد عبور، مجوزهای پروکسی یا زنجیره‌های گواهی متفاوتی داشته باشند. یک درخواست نقشه موفق فقط ثابت می‌کند که مسیر خودش کار می‌کند.

نام کلاینت HTTP، میزبان مقصد، اینکه آیا احراز هویت پروکسی درخواست شده و مرحله واقعی خطا را ثبت کنید. رمزهای عبور را از گزارش‌های افزونه حذف کنید. این مقایسه کوچک معمولاً به شما می‌گوید که باید یکپارچگی شبکه QGIS را اصلاح کنید یا کلاینت مستقل Python را، بدون بازنشانی ترجیحات پروکسی که از قبل برای کاربر کار می‌کند.

مقالات مرتبط