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ṣẹ́.

Àwọn àpilẹ̀kọ tó jọra