ການພິສູດຕົວຕົນຜ່ານພຣັອກຊີຂອງ HTTParty: ໂຮສ, ພອດ, ຊື່ຜູ້ໃຊ້ ແລະ ລະຫັດຜ່ານ
ສົ່ງໂຮສພຣັອກຊີ HTTP, ພອດເປັນຕົວເລກ ແລະ ຂໍ້ມູນພຣັອກຊີທີ່ເປັນທາງເລືອກ ໄປຍັງຄຳຮ້ອງ HTTParty ໂດຍກົງ ໂດຍເກັບ API token ໄວ້ໃນຫົວຂໍ້ຂອງມັນເອງ.
HTTParty ຮັບພຣັອກຊີທາງໜ້າເປັນທາງເລືອກຂອງຄຳຮ້ອງ. ໃຫ້ URL ຂອງບໍລິການເປັນອາກູເມັນທຳອິດ:
response = HTTParty.get(
'https://api.example/items',
http_proxyaddr: 'proxy.example',
http_proxyport: 8080,
http_proxyuser: ENV.fetch('PROXY_USER'),
http_proxypass: ENV.fetch('PROXY_PASSWORD'),
headers: { 'Authorization' => "Bearer #{ENV.fetch('API_TOKEN')}" },
open_timeout: 5,
read_timeout: 15
)
puts response.code
ໂຮສ ແລະ ພອດຂອງພຣັອກຊີກຳນົດຕົວກາງ. ຊື່ຜູ້ໃຊ້ ແລະ ລະຫັດຜ່ານຂອງພຣັອກຊີຖືກພິສູດຢູ່ທີ່ນັ້ນ. ຫົວຂໍ້ Authorization ເປັນຂອງ API ເຊິ່ງບັນຊີຂອງມັນອາດແຕກຕ່າງກັນທັງໝົດ.
ສຳລັບພຣັອກຊີທີ່ບໍ່ມີການພິສູດຕົວຕົນ ໃຫ້ຕັດ http_proxyuser ແລະ http_proxypass ອອກ. ສຳລັບຄຳຮ້ອງ API ສາທາລະນະເທິງເສັ້ນທາງສາທາລະນະທີ່ອະນຸຍາດ ໃຫ້ເອົາທີ່ຢູ່ HTTP ຈາກລາຍຊື່ພຣັອກຊີ HTTP ໂດຍບໍ່ເກັບຂໍ້ມູນພຣັອກຊີໄວ້ໃນຄຳຮ້ອງ ຫຼື ໃນຄ່າເລີ່ມຕົ້ນຂອງຄລາສ. ຊ່ອງໂຮສຖືກສົ່ງເປັນທີ່ຢູ່ພຣັອກຊີໄປຍັງ Net::HTTP; ໃຫ້ຊື່ໂຮສແຍກຈາກພອດ ບໍ່ແມ່ນ URL ປາຍທາງ ຫຼື URL PAC.
ຄລາສຫຸ້ມທີ່ລວມ HTTParty ສາມາດ ໃຊ້ເມທັດຄລາສ http_proxy ເພື່ອກຳນົດຄ່າເລີ່ມຕົ້ນ ແທນໄດ້. ທາງເລືອກຂອງຄຳຮ້ອງຂຽນທັບຄ່າເລີ່ມຕົ້ນເຫຼົ່ານັ້ນສຳລັບການເອີ້ນທີ່ສົ່ງພວກມັນ.
ນີ້ອະທິບາຍອາດາປເຕີການເຊື່ອມຕໍ່ເລີ່ມຕົ້ນຂອງ HTTParty. connection_adapter ທີ່ກຳນົດເອງຮັບຜິດຊອບໃນການຕີຄວາມທາງເລືອກຂອງມັນ ດັ່ງນັ້ນກວດອາດາປເຕີນັ້ນເມື່ອການຕັ້ງຄ່າທີ່ຖືກຕ້ອງເບິ່ງຄືຖືກລະເລີຍ. ອ່ານສະຖານະ HTTP ແຍກຈາກຂໍ້ມູນ API ທີ່ແຍກແລ້ວ; ການແຍກ JSON ສຳເລັດບໍ່ແມ່ນຜົນຂອງການພິສູດຕົວຕົນ.