Commons Net FTPHTTPClient: tunailean proxy HTTP airson FTP fulangach
Dèan tunail de smachd FTP agus de cheanglaichean dàta fulangach tro proxy HTTP le cliant sònraichte Commons Net.
Tha FTPHTTPClient aig Apache Commons Net airson FTP tro proxy HTTP CONNECT. Chan e dìreach ruigsinn port clàraidh FTP a tha na fheart fheumail aige: bidh e cuideachd a' stèidheachadh tunailean proxy airson nan ceanglaichean dàta fulangach a bhios liostaichean agus gluasad fhaidhle a' cleachdadh.
Gabhaidh an t-inneal-togail crioch-phuing a' phroxy agus teisteanasan proxy roghnach. Fuirichidh am frithealaiche FTP mar argamaid do connect, agus gheibh login an cunntas 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();
}
}
Tha an earrann gluasaid seo a' gabhail ris na h-in-mhalairtean FTP aig Commons Net, java.io.IOException, caochladairean teisteanais a bheir an t-aplacaid seachad agus sruth toraidh a tha aig an neach-gairm. 'S e remoteFile an t-ainm faidhle a thathar an dùil air taobh an fhrithealaiche. Feumaidh an t-aplacaid a sruth toraidh fhèin a dhùnadh aig an àm iomchaidh cuideachd.
Suidhich am modh fulangach an dèidh ceangal agus ro obair dàta. Diùltaidh buileachadh FTPHTTPClient ceanglaichean dàta ann am modh gnìomhach. Ann am modh fulangach, nì e barganachadh air crioch-phuing an dàta le FTP agus fosglaidh e ceangal eile chun a' phroxy HTTP, agus an uair sin iarraidh e tunail CONNECT chun na crioch-phuinge sin.
Mìnichidh an dàrna tunail sin crìoch cumanta: chan eil cead a' phroxy airson port smachd FTP gu leòr. Feumaidh na cinn-uidhe agus na puirt a cheadaichear a bhith a' gabhail a-steach crioch-phuingean dàta fulangach an fhrithealaiche. Chan eil fàilte agus clàradh soirbheachail a' dearbhadh ach gun do dh'obraich an t-slighe smachd.
Bheir am buileachadh dearbhadh-aithne Basic don phroxy nuair a tha an dà chuid ainm-cleachdaidh agus facal-faire a' phroxy an làthair. Tha sin eadar-dhealaichte bho iomlaid FTP USER/PASS. Feumaidh proxy a dh'iarras dòigh-dearbhadh eile ceanglaiche co-fhreagarrach; chan eil an t-inneal-togail a' dèanamh a h-uile sgeama ri fhaighinn.
Tha Commons Net a' sgrìobhadh a' chlas seo mar fhear deuchainneach, mar sin dèan measadh air an aghaidh riatanasan an aplacaid agus a' phroxy mus gabh thu ris. 'S e cliant FTP a th' ann, chan e cliant FTPS no SFTP. Airson FTPS le seirbheis SOCKS ri fhaighinn, 's e eadar-aghaidh socket-proxy FTPSClient slighe cliant air leth. Bheir CONNECT an t-slighe seachad agus chan eil e fhèin a' crioptachadh theisteanasan FTP no susbaint fhaidhle.
Cum na mearachdan ceangailte ris an ìre a thug a-mach iad: diùltadh HTTP ri linn suidheachadh an tunail, diùltadh clàraidh FTP, no fàilligeadh gluasaid FTP/dàta. Chan urrainn dha facal-faire FTP ùr fuasgladh a thoirt do phoileasaidh proxy a dh'iarras a' phort dàta fulangach a dhiùltadh.