ສົ່ງເສັ້ນທາງ SOCKS ຂອງ TIdHTTP ຜ່ານ IOHandler ຂອງມັນ
ເຊື່ອມການຕັ້ງຄ່າ SOCKS ເຂົ້າກັບ IOHandler ຂອງ Indy 10 ທີ່ TIdHTTP ໃຊ້ ໂດຍປ່ອຍໃຫ້ເປົ້າໝາຍ HTTP ຢູ່ໃນຄຳຮ້ອງຂໍ.
ໃນ Indy 10, ເຊື່ອມຕໍ່ TIdHTTP ກັບ SOCKS proxy ຜ່ານ IOHandler ຂອງມັນ. ສົມມຸດວ່າແບບຟອມມີອົງປະກອບ Http, SocketHandler ແລະ Socks ແລ້ວ:
Http.IOHandler := SocketHandler;
SocketHandler.TransparentProxy := Socks;
Socks.Host := 'proxy.example';
Socks.Port := 1080;
Socks.Version := svSocks5;
Page := Http.Get('http://example.com/');
ທີ່ນີ້ SocketHandler ແມ່ນ TIdIOHandlerStack ແລະ Socks ແມ່ນ TIdSocksInfo. ຕັ້ງຄ່າອົງປະກອບກ່ອນຄຳຮ້ອງຂໍ. ສຳລັບຕົວຢ່າງເວັບໄຊສາທາລະນະທີ່ບໍ່ມີຂໍ້ມູນຢືນຢັນ proxy ນີ້, ເລືອກຜູ້ສະໝັກ SOCKS5 ຈາກ ລາຍຊື່ proxy SOCKS5 ແລະ ຮັກສາເສັ້ນທາງ proxy HTTP ເກົ່າທີ່ລ້າສະໄໝໃຫ້ວ່າງເປົ່າດັ່ງທີ່ອະທິບາຍຂ້າງລຸ່ມ. ການເລືອກເວີຊັນ SOCKS ມີຄວາມສຳຄັນ ເພາະຄ່າເລີ່ມຕົ້ນແມ່ນ svNoSocks.
ProxyParams ຂອງ TIdHTTP ຕັ້ງຄ່າ proxy HTTP. ເສັ້ນທາງ SOCKS ຢ່າງດຽວເປັນຂອງ TransparentProxy ແທນ. ການເກັບ proxy HTTP ໄວ້ທີ່ນັ້ນນຳອາດສະແດງເຖິງຕົວກາງອີກອັນໜຶ່ງນອກເໜືອຈາກການເຊື່ອມຕໍ່ SOCKS, ດັ່ງນັ້ນຈຶ່ງລຶບການຕັ້ງຄ່າ proxy HTTP ເກົ່າທີ່ລ້າສະໄໝ ເມື່ອມັນບໍ່ແມ່ນສ່ວນໜຶ່ງຂອງເສັ້ນທາງທີ່ຕັ້ງໃຈ.
ສຳລັບການຢືນຢັນຊື່ຜູ້ໃຊ້/ລະຫັດຜ່ານ SOCKS5, ຕັ້ງ Socks.Authentication ເປັນ saUsernamePassword ແລະ ໃຫ້ຊື່ຜູ້ໃຊ້ ແລະ ລະຫັດຜ່ານ. IOHandler ທີ່ຮອງຮັບ SSL ຄວນຮັກສາບົດບາດ TLS ຂອງມັນ; ເຊື່ອມ SOCKS ເຂົ້າກັບອິນເຕີເຟສ proxy ທີ່ສືບທອດມາ ແທນທີ່ຈະປ່ຽນມັນດ້ວຍ handler ທຳມະດາ.