gRPC C-Core'da proksi va chetlab o'tish o'zgaruvchilari ustuvorligi
Boshqa gRPC implementatsiyasi bir xil mapperdan foydalanadi deb hisoblamasdan, gRPC Core proksi va chetlab o'tish ustuvorligini kuzating.
Yuqoriroq ustuvorlikka ega gRPC sozlamasi allaqachon mavjud bo'lsa, http_proxy ni o'zgartirish hech narsa qilmasligi mumkin. Implementatsiyani aniqlashdan boshlang: quyidagi xatti-harakat gRPC C-Core'ning standart HTTP proksi mapperiga va unga bog'liq qismlarga tegishli.
Mapper avval kanal proksi argumentini, keyin grpc_proxy, keyin https_proxy, keyin http_proxy ni tekshiradi va birinchi sozlangan qiymatda to'xtaydi.
Chetlab o'tishni aniqlashning o'z tartibi bor: no_grpc_proxy no_proxy dan ustun. U yerdagi eski qiymat nima uchun bir maqsad boshqacha sozlangan proksidan qochishini tushuntirishi mumkin.
Bu mapper HTTP CONNECT dan foydalanadi. Uning hujjatlashtirilgan proksi URI HTTP sxemasini kutadi; TLS bilan himoyalangan gRPC xizmati o'zi TLS bilan himoyalangan proksi oxirgi nuqtasini talab qilmaydi. Brauzerning istalgan kirish sxemasi mavjud deb hisoblash o'rniga qo'llab-quvvatlanadigan autentifikatsiyani alohida tekshiring. Ommaviy vositachilarga ruxsat berilgan ommaviy gRPC maqsadi uchun HTTP proksilar ro'yxatidan tanlangan HTTP proksi URI uchun oxirgi nuqta nomzodlarini taklif qiladi; haqiqiy CONNECT maqsadi va portga kirishni tasdiqlang.
Java, Go, JavaScript yoki boshqa tildagi gRPC implementatsiyasi boshqa transport kodi va konfiguratsiyasiga ega bo'lishi mumkin. C-Core o'zgaruvchilar ro'yxatini gRPC deb ataladigan hamma narsaga universal qoida sifatida qo'llamang.
Muvaffaqiyatsiz kanal uchun tanlangan proksini, chetlab o'tish qarorini, maqsadni va xato bosqichini saqlang. Boshqa klient orqali erishiladigan HTTP API bu mapper bir xil sozlamalardan foydalanganini yoki proksi talab qilinadigan CONNECT manziliga ruxsat berishini isbotlamaydi.