Commons Net FTPHTTPClient: àwọn ọ̀nà àbẹ́wọ̀ proxy HTTP fún FTP àìṣiṣẹ́
Ṣe ìṣàkóso FTP àti àwọn ìsopọ̀ dátà àìṣiṣẹ́ nípasẹ̀ proxy HTTP pẹ̀lú olùbásọ̀rọ̀ àkànṣe Commons Net.
Apache Commons Net ní FTPHTTPClient fún FTP nípasẹ̀ proxy HTTP CONNECT. Ẹ̀yà tí ó wúlò kì í ṣe wíwọ dé ibi ìwọlé FTP nìkan: ó tún ń dá àwọn ọ̀nà àbẹ́wọ̀ proxy fún àwọn ìsopọ̀ dátà àìṣiṣẹ́ tí àkójọ àti gbígbé fáìlì ń lò.
Olùdá náà gba ibi ìparí proxy àti àwọn ẹ̀rí proxy àṣàyàn. Ẹ̀rọ FTP ṣì jẹ́ argument fún connect, login sì gba àkọsílẹ̀ FTP:
FTPHTTPClient ftp = new FTPHTTPClient(
"proxy.example.net", 8080, proxyUser, proxyPassword
);
try {
ftp.connect("ftp.example.net", 21);
if (!FTPReply.isPositiveCompletion(ftp.getReplyCode())) {
throw new IOException(ftp.getReplyString());
}
if (!ftp.login(ftpUser, ftpPassword)) {
throw new IOException(ftp.getReplyString());
}
ftp.enterLocalPassiveMode();
if (!ftp.setFileType(FTP.BINARY_FILE_TYPE)
|| !ftp.retrieveFile(remoteFile, output)) {
throw new IOException(ftp.getReplyString());
}
ftp.logout();
} finally {
if (ftp.isConnected()) {
ftp.disconnect();
}
}
Ẹ̀ka ìgbéjáde yìí rò pé àwọn àgbékalẹ̀ FTP Commons Net, java.io.IOException, àwọn onírúurú ẹ̀rí tí ohun-èlò pèsè àti ṣíṣàn àbájáde tí ẹni tí ó pè ni ó ni. remoteFile ni orúkọ fáìlì tí a fẹ́ ní ẹ̀gbẹ́ ẹ̀rọ. Ohun-èlò gbọdọ̀ túmọ̀ ṣíṣàn àbájáde rẹ̀ ní àkókò tí ó yẹ.
Ṣètò ipò àìṣiṣẹ́ lẹ́yìn ìsopọ̀ àti ṣáájú iṣẹ́ dátà. Ìmúṣẹ́ FTPHTTPClient kọ àwọn ìsopọ̀ dátà ní ipò ṣíṣẹ́. Ní ipò àìṣiṣẹ́, ó ń ṣe ìdúnàádúrà ibi ìparí dátà pẹ̀lú FTP ó sì ń ṣí ìsopọ̀ mìíràn sí proxy HTTP, lẹ́yìn náà ó béèrè ọ̀nà àbẹ́wọ̀ CONNECT sí ibi ìparí yẹn.
Ọ̀nà àbẹ́wọ̀ kejì yẹn ṣàlàyé ààlà tí ó wọ́pọ̀: ìyọ̀nda proxy fún ibi ìṣàkóso FTP kò tó. Àwọn ibi àti ibi-ìwọlé tí a yọ̀nda gbọdọ̀ ní àwọn ibi ìparí dátà àìṣiṣẹ́ ẹ̀rọ. Ìkíni àti ìwọlé tí ó ṣàṣeyọrí ń fi hàn pé ọ̀nà ìṣàkóso ṣiṣẹ́ nìkan.
Ìmúṣẹ́ náà ń pèsè ìjẹ́rìí proxy Basic nígbà tí orúkọ olùlò àti ọ̀rọ̀ ìpamọ́ proxy méjèèjì wà. Èyí yàtọ̀ sí ìpààsẹ̀ FTP USER/PASS. Proxy tí ó nílò ọ̀nà ìjẹ́rìí mìíràn nílò ohun-ìsopọ̀ tí ó bá a mu; olùdá kò mú gbogbo ètò wà.
Commons Net ṣe àkọsílẹ̀ kíláàsì yìí gẹ́gẹ́ bí ìdánwò, nítorí náà ṣe ìgbéléwọ̀n rẹ̀ pẹ̀lú àwọn ohun tí ohun-èlò àti proxy nílò ṣáájú gbígbà á. Ó jẹ́ olùbásọ̀rọ̀ FTP, kì í ṣe olùbásọ̀rọ̀ FTPS tàbí SFTP. Fún FTPS tí iṣẹ́ SOCKS wà, ójú-ìsopọ̀ socket-proxy FTPSClient jẹ́ ọ̀nà olùbásọ̀rọ̀ ọ̀tọ̀ọ̀tọ̀. CONNECT ń pèsè ọ̀nà náà, kò sì fi ọwọ́ ara rẹ̀ pa àwọn ẹ̀rí FTP tàbí àkóónú fáìlì mọ́.
Jẹ́ kí àwọn àṣìṣe dúró mọ́ ìpele tí ó dá wọn: ìkọ̀ HTTP nígbà ìṣètò ọ̀nà àbẹ́wọ̀, ìkọ̀ ìwọlé FTP, tàbí ìkùnà gbígbé FTP/dátà. Yíyí ọ̀rọ̀ ìpamọ́ FTP padà kò lè yanjú ìlànà proxy tí ó kọ ibi-ìwọlé dátà àìṣiṣẹ́.