ຕັ້ງຄ່າ proxy Savon HTTPI ສຳລັບຄຳຮ້ອງ WSDL ແລະ SOAP
ຕັ້ງຄ່າ proxy ໃນ client Savon HTTPI ແລະ ພິຈາລະນາທັງການດຶງ WSDL ຈາກໄລຍະໄກ ແລະ ການເອີ້ນ SOAP.
ໃນ client Savon ທີ່ໃຊ້ HTTPI, proxy ເປັນສ່ວນໜຶ່ງຂອງຕົວເລືອກຂອງ client. ມັນໃຊ້ເມື່ອດຶງ WSDL ຈາກໄລຍະໄກ ແລະ ເມື່ອສົ່ງຄຳຮ້ອງ SOAP.
client = Savon.client(
wsdl: 'https://service.example/soap?wsdl',
proxy: ENV.fetch('SOAP_PROXY_URL'),
open_timeout: 5,
read_timeout: 15
)
ຕົວຢ່າງນີ້ສົມມຸດວ່າໃຊ້ transport HTTPI. ໃຫ້ URL proxy ທີ່ໄດ້ຮັບອະນຸມັດຜ່ານສະພາບແວດລ້ອມ. ສຳລັບການທົດສອບ SOAP ສາທາລະນະທີ່ອະນຸຍາດໃຫ້ມີຕົວກາງ HTTP ທີ່ບໍ່ມີການພິສູດຕົວຕົນ, ຜູ້ສະໝັກຈາກລາຍຊື່ proxy HTTPສາມາດໃຫ້ URL ນັ້ນໄດ້; ແຍກການຕັດສິນໃຈກ່ຽວກັບການພິສູດຕົວຕົນຂອງບໍລິການ ແລະ ຂອງ proxy ອອກຈາກກັນ. ຖ້າວິທີພິສູດຕົວຕົນທີ່ຮອງຮັບໃຊ້ຂໍ້ມູນຢືນຢັນໃນ URL, ຈົ່ງເຂົ້າລະຫັດຕົວອັກສອນທີ່ສະຫງວນໄວ້ໃນຂໍ້ມູນເຫຼົ່ານັ້ນ ແລະ ເກັບ URL ຜົນໄດ້ຮັບໄວ້ນອກບັນທຶກ.
Savon ເອີ້ນພວກມັນວ່າ «ຕົວເລືອກທົ່ວໄປ» ແຕ່ພວກມັນເປັນພາຍໃນຕົວຢ່າງ client ດຽວ. client ອື່ນທີ່ສ້າງຢູ່ບ່ອນອື່ນຈະບໍ່ໄດ້ຮັບ proxy ໂດຍອັດຕະໂນມັດ.
ກວດສອບ transport ທີ່ຕິດຕັ້ງໄວ້ກ່ອນນຳ snippet ມາໃຊ້ຄືນ. ເອກະສານ Savon ປັດຈຸບັນກຳນົດຕົວເລືອກເຫຼົ່ານີ້ໃຫ້ HTTPI; transport Faraday ຂອງມັນມີໜ້າຕັ້ງຄ່າຂອງຕົນເອງຜ່ານ client.faraday ແລະ ປະຕິເສດຕົວເລືອກສະເພາະ HTTPI ເຫຼົ່ານີ້. ຈົ່ງຕັ້ງຄ່າ transport ທີ່ເລືອກ ແທນທີ່ຈະປະສົມສອງໜ້ານີ້.
ແຍກບັນຊີ proxy ອອກຈາກຂໍ້ມູນຢືນຢັນຂອງບໍລິການ SOAP ແລະ ຄ່າ WS-Security. 407 ຂອງ proxy, ການທ້າທາຍເຂົ້າລະບົບ HTTP ຂອງບໍລິການ ແລະ ຄວາມຜິດພາດ SOAP ຊີ້ບອກການແລກປ່ຽນທີ່ແຕກຕ່າງກັນ. ການດຶງ WSDL ອາດລົ້ມເຫຼວກ່ອນ client ຈະໄດ້ເຮັດການດຳເນີນງານແອັບພລິເຄຊັນໃດໜຶ່ງ.