Apache HttpClient ຮູ້ລະຫັດຜ່ານແຕ່ຍັງໄດ້ຮັບ 407
ຈັບຄູ່ຂໍ້ມູນຢືນຢັນພຣັອກຊີຂອງ Apache HttpClient ກັບເສັ້ນທາງພຣັອກຊີຕົວຈິງ ແລະ ແຍກຄຳທ້າຍທາຍການຢືນຢັນອອກຈາກການເຂົ້າສູ່ລະບົບທີ່ລົ້ມເຫລວ.
ລະຫັດຜ່ານທີ່ຖືກຕ້ອງຢູ່ຜູ້ໃຫ້ບໍລິການບໍ່ໄດ້ສ້າງຂໍ້ມູນຢືນຢັນທີ່ກົງກັນສຳລັບພຣັອກຊີທີ່ຖືກເລືອກຕົວຈິງ. ເລີ່ມຈາກ scheme, host ແລະ port ຂອງ endpoint ນັ້ນ; ຊ່ອງ host ປົກກະຕິຮັບພຽງຊື່ host ຫຼື IP, ບໍ່ແມ່ນ URL ເຕັມ.
- ອ່ານການແລກປ່ຽນການຢືນຢັນທັງໝົດ. 407 ທີ່ຕາມດ້ວຍການລອງຄືນທີ່ຖືກຮັບ ອາດເປັນເລື່ອງປົກກະຕິ. ຢືນຢັນວ່າຜົນສຸດທ້າຍຍັງເປັນ 407 ກ່ອນຈະຖືວ່າການເຂົ້າສູ່ລະບົບຖືກປະຕິເສດ.
- ປຽບທຽບເສັ້ນທາງ ແລະ ຂອບເຂດຂອງຂໍ້ມູນຢືນຢັນ. ຈັບຄູ່ host/port ຕົວຈິງ ແລະ ຊ່ອງອື່ນໆທີ່ກຳນົດໂດຍ HttpClient 5 AuthScope ທີ່ຕິດຕັ້ງໄວ້. port ທີ່ຜິດອາດເຮັດໃຫ້ BasicCredentialsProvider ບໍ່ມີລາຍການທີ່ເໝາະສົມ.
- ກວດສອບວິທີ ແລະ ຕົວຕົນ. ພຣັອກຊີໄດ້ສະເໜີວິທີທີ່ຮອງຮັບບໍ? ການລອງຄືນໄດ້ໃຊ້ການເຊື່ອມຕໍ່ທີ່ຄາດຫວັງບໍ? ຜູ້ດຳເນີນງານຕ້ອງການບັນຊີທີ່ມີຄຸນວຸດທິໂດເມນ ຫຼື ຮູບແບບທີ່ເອກະສານໄວ້ອື່ນບໍ?
ໃຊ້ API ຂອງເວີຊັນຫຼັກທີ່ຕິດຕັ້ງ. ສູດແຄຊການຢືນຢັນຂອງ HttpClient 4 ບໍ່ຖ່າຍໂອນໄປຫາເວີຊັນ 5 ໂດຍບໍ່ປ່ຽນ. ໃຊ້ຂໍ້ກຳນົດບັນຊີຂອງຜູ້ດຳເນີນງານ ແທນທີ່ຈະວົນຊອກຫາຕົວແປຊື່ຜູ້ໃຊ້ຕາມອຳເພີໃຈ.
ການຢືນຢັນລ່ວງໜ້າເປັນທາງເລືອກທີ່ຕັ້ງໃຈອີກຢ່າງໜຶ່ງ. ສຳລັບ scheme ທີ່ເຂົ້າກັນໄດ້ ມັນອາດຕັດຮອບໜຶ່ງອອກ ແຕ່ມັນປ່ຽນເວລາທີ່ຂໍ້ມູນຢືນຢັນອອກໄປ ແລະ ຕ້ອງການຂອບເຂດທີ່ຮອງຮັບ. ມັນບໍ່ສາມາດເປັນການແກ້ໄຂທຳອິດສຳລັບ endpoint ທີ່ບໍ່ກົງກັນ ຫຼື ວິທີທີ່ບໍ່ຮອງຮັບ.
ເກັບຕົວຕົນພຣັອກຊີທີ່ຖືກທ້າຍທາຍ, ວິທີ, ການກົງກັນຂອງຂອບເຂດ ແລະ ສະຖານະສຸດທ້າຍໄວ້ໃນ ການບົ່ງມະຕິ ທີ່ປັບແຕ່ງແລ້ວ. ລະຫັດຜ່ານ ແລະ ຮ່ອງຮອຍດິບທີ່ມີຂໍ້ມູນຢືນຢັນບໍ່ຈຳເປັນສຳລັບການປຽບທຽບນັ້ນ.