HttpClient httpClient = HttpClient.create()
    .proxy(proxy -> proxy.type(ProxyProvider.Proxy.HTTP)
        .host("203.0.113.10").port(8080));

WebClient client = WebClient.builder()
    .clientConnector(new ReactorClientHttpConnector(httpClient))
    .build();

ໃຊ້ WebClient ນີ້ສຳລັບການເອີ້ນນີ້. ສຳລັບບໍລິການສາທາລະນະຜ່ານເສັ້ນທາງ proxy ສາທາລະນະທີ່ອະນຸຍາດ, ລາຍຊື່ HTTP proxy ສະໜອງ host ແລະ port ທີ່ເປັນຕົວແທນ; ກວດສອບການເຂົ້າເຖິງ CONNECT ໄປຫາປາຍທາງຕົວຈິງ. ປະເພດ HttpClient/ProxyProvider ເປັນຂອງ Reactor Netty, ບໍ່ແມ່ນ client ມາດຕະຖານຂອງ Java. WebClient ອື່ນທີ່ຖືກ inject ສາມາດຮັກສາ connector ອື່ນໄດ້.

ເສັ້ນທາງ HTTP proxy ຂອງ Netty ຕາມເອກະສານຂອງ Reactor Netty ໃຊ້ CONNECT ໂດຍບໍ່ຄຳນຶງເຖິງ scheme ຂອງປາຍທາງ. ດັ່ງນັ້ນ ເປົ້າໝາຍ HTTP ທຳມະດາ ອາດຕ້ອງການສິດ tunnel ໄປຫາ port ຂອງມັນ ເຖິງແມ່ນວ່າ proxy ຈະຮັບ HTTP ທີ່ສົ່ງຕໍ່ແບບປົກກະຕິຢູ່ທີ່ນັ້ນ. ອ່ານການຕອບສະໜອງຕົວຈິງຂອງ proxy ກ່ອນປ່ຽນ scheme ຂອງ URL. ສຳລັບການຕິດຕັ້ງ Spring 6.2 ທີ່ເຂົ້າກັນທີ່ຕ້ອງການການສົ່ງຕໍ່ HTTP/1.1 ແບບປົກກະຕິ, ຕົວຢ່າງ connector Jetty 12.0.35 ສະໜອງທາງເລືອກນັ້ນ.

ສຳລັບການເສັ້ນທາງດ້ວຍ JVM property, ເລືອກການຕັ້ງຄ່າແບບ opt-in ຕາມເອກະສານຂອງ Reactor Netty. property ທີ່ມີຢູ່ໃນ JVM ບໍ່ໄດ້ຕັ້ງຄ່າ connector ທຸກຕົວ.

ແຍກການຕັ້ງຄ່າ/ການຢືນຢັນຕົວຕົນຂອງ proxy, TLS ຂອງປາຍທາງ ແລະ ການຕອບສະໜອງຂອງແອັບພລິເຄຊັນ ອອກຈາກກັນ. connector ສະໜອງເສັ້ນທາງ, ບໍ່ແມ່ນຂໍ້ມູນຢືນຢັນຕົວຕົນ ຫຼື ຜົນຂອງໂປຣໂຕຄອນຂອງປາຍທາງ.

ບົດຄວາມທີ່ກ່ຽວຂ້ອງ