Commons Net FTPHTTPClient: د غیر فعال FTP لپاره د HTTP پراکسي تونلونه
د Commons Net د ځانګړي کلاینټ سره د HTTP پراکسي له لارې د FTP کنټرول او غیر فعال ډیټا اړیکې تونل کړئ.
Apache Commons Net د HTTP CONNECT پراکسي له لارې د FTP لپاره FTPHTTPClient لري. د هغې ګټور ځانګړتیا یوازې د FTP د ننوتلو پورت ته رسیدل نه دي: دا د هغو غیر فعال ډیټا اړیکو لپاره هم پراکسي تونلونه جوړوي چې لیستونه او د فایل لېږدونه یې کاروي.
جوړونکی د پراکسي پای ټکی او اختیاري پراکسي اعتبارونه مني. د FTP سرور د connect دلیل پاتې کیږي، او login د 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();
}
}
دا د لېږد برخه د Commons Net د FTP واردات، java.io.IOException، د اپلیکیشن لخوا ورکړل شوي اعتبار متغیرونه او د غوښتونکي ملکیت تولید جریان فرض کوي. remoteFile د سرور په اړخ کې پلان شوی د فایل نوم دی. اپلیکیشن باید په مناسب وخت کې خپل تولید جریان هم وتړي.
غیر فعال حالت د نښلولو وروسته او د ډیټا عملیاتو دمخه تنظیم کړئ. د FTPHTTPClient پلي کول په فعال حالت کې ډیټا اړیکې ردوي. په غیر فعال حالت کې دا د FTP سره د ډیټا پای ټکی خبرې اترې کوي او HTTP پراکسي ته بله اړیکه پرانیزي، بیا هغه پای ټکي ته د CONNECT تونل غوښتنه کوي.
هغه دوهم تونل یو عام حد تشریح کوي: د FTP د کنټرول پورت لپاره پراکسي اجازه کافي نه ده. اجازه شوي منزلونه او پورتونه باید د سرور غیر فعال ډیټا پای ټکي شامل کړي. بریالۍ سلام او ننوتل یوازې دا ثابتوي چې د کنټرول لاره کار کړې.
پلي کول Basic پراکسي تصدیق چمتو کوي کله چې د پراکسي کارن نوم او پټنوم دواړه موجود وي. دا د FTP USER/PASS تبادلې څخه توپیر لري. هغه پراکسي چې بل تصدیق میکانیزم غواړي یو مطابق کنیکټر ته اړتیا لري؛ جوړونکی هر سکیم د لاسرسي وړ نه جوړوي.
Commons Net دا ټولګه د ازموینې په توګه مستند کوي، نو د منلو دمخه یې د اپلیکیشن او پراکسي اړتیاوو سره ارزښت ورکړئ. دا د FTP کلاینټ دی، نه د FTPS یا SFTP کلاینټ. د SOCKS خدمت سره د FTPS لپاره د FTPSClient ساکټ-پراکسي انٹرفیس جلا د کلاینټ لاره ده. CONNECT لاره برابروي او پخپله د FTP اعتبارونه یا د فایل منځپانګه کوډ نه کوي.
تېروتنې له هغه پړاو سره وتړئ چې هغه یې رامنځته کړې: د تونل په جوړولو کې د HTTP رد، د FTP ننوتلو انکار، یا د FTP/ډیټا لېږد ناکامي. د FTP پټنوم بدلول د هغه پراکسي پالیسي حل نشي کولی چې غیر فعال ډیټا پورت ردوي.