ການວິນິດໄສພຣັອກຊີໃນ R: ເວີຊັນ libcurl, TLS backend ແລະໂປໂຕຄອນ
ກວດສອບເວີຊັນ, ການຈັດຕັ້ງ TLS ແລະຄຸນລັກສະນະໂປໂຕຄອນຂອງ libcurl ທີ່ເຊື່ອມຕໍ່ກັບ R ແຍກຈາກໄຟລ໌ curl ພາຍນອກ.
R ທີ່ຕິດຕັ້ງໃນສະພາບແວດລ້ອມ Conda ອາດໃຊ້ libcurl build ທີ່ແຕກຕ່າງຈາກໄຟລ໌ curl ໃນ terminal. ຖາມ R session ທີ່ລົ້ມເຫຼວວ່າມັນມີຫ້ອງສະໝຸດໃດແທ້:
info <- libcurlVersion()
info
attr(info, 'ssl_version')
attr(info, 'protocols')
ຄ່າຕົວອັກສອນລາຍງານເວີຊັນ libcurl ທີ່ເຊື່ອມຕໍ່. ຄຸນລັກສະນະ ssl_version ລະບຸການຈັດຕັ້ງ TLS, ສ່ວນ protocols ລາຍຊື່ໂປໂຕຄອນປາຍທາງທີ່ຫ້ອງສະໝຸດນັ້ນຮອງຮັບ. ສິ່ງເຫຼົ່ານີ້ອະທິບາຍເສັ້ນທາງ libcurl ພາຍໃນ R ບໍ່ແມ່ນຄຳສັ່ງ shell ຊື່ curl.
ຈັບຄູ່ລາຍງານກັບວິທີດາວໂຫຼດ
download.file ກັບ method='libcurl' ໃຊ້ຫ້ອງສະໝຸດນີ້. method='curl' ເປີດໄຟລ໌ປະຕິບັດພາຍນອກ. ການເລືອກ HTTP(S) ອັດຕະໂນມັດໃນປັດຈຸບັນໃຊ້ libcurl, ແລະຕົວເລືອກ download.file.method ທີ່ມີຄ່າ NULL ອາດປ່ອຍໃຫ້ຄ່າເລີ່ມຕົ້ນນັ້ນຄົງຢູ່.
ເຮັດການກວດສອບໃນສະພາບແວດລ້ອມຈິງທີ່ວຽກ ຫຼື IDE ເລືອກ. ການຕິດຕັ້ງ R ອື່ນອາດລາຍງານເວີຊັນ ຫຼື TLS backend ອື່ນ ເຖິງແມ່ນສະຄຣິບຂອງມັນເບິ່ງຄືກັນ.
ໂປໂຕຄອນ https ທີ່ຢູ່ໃນລາຍຊື່ໝາຍຄວາມວ່າປາຍທາງ HTTPS ຖືກຮອງຮັບ. ມັນບໍ່ໄດ້ພິສູດວ່າ ຕົວຮັບຟັງພຣັອກຊີໃດໜຶ່ງຮັບ TLS. ພຣັອກຊີ HTTP ທຳມະດາສຳລັບການດາວໂຫຼດ HTTPS ຍັງມີ URL ພຣັກຊີເປັນ http://.
ເກັບລາຍງານຫ້ອງສະໝຸດໄວ້ກັບວິທີທີ່ເລືອກ ແລະຂໍ້ຜິດພາດການເຊື່ອມຕໍ່. ການລົ້ມເຫຼວຂອງໃບຮັບຮອງ, ແຜນພຣັອກຊີທີ່ບໍ່ຮອງຮັບ ແລະຕົວຮັບຟັງທີ່ຖືກປະຕິເສດ ຍັງເປັນການຄົ້ນພົບທີ່ແຕກຕ່າງກັນ; ເລກເວີຊັນຢ່າງດຽວບໍ່ແມ່ນການວິນິດໄສຂອງພວກມັນ.