Загрузить файл на сервер - PascalABC.NET
Формулировка задачи:
Возможно ли с помощью Pascal ABC NET отправить какой либо файл через интернет? Например загрузить его на хостинг или передать как нибудь на другой компьютер?
или например создать батник который отправляет файл, а из программы его запускать
Решение задачи: «Загрузить файл на сервер»
textual
Листинг программы
Uses System,System.IO,System.net;
procedure createfolder(name: string);
begin
var reqFTPs: ftpwebrequest;
var uriftp: string := ('ftp://YOURFTP');
var urinak: string;
var responsebrowser: ftpwebresponse;
urinak := (uriftp + '/' + name);
reqftps := (new FtpWebRequest(urinak)) as ftpwebrequest;
reqFTPs.Credentials := new NetworkCredential( 'USERNAME', 'PASSWORD' );
reqFTPs.KeepAlive := false;
reqFTPs.Method := WebRequestMethods.Ftp.MakeDirectory;
reqFTPs.usebinary := true;
try
responsebrowser := reqFTPs.GetResponse as FtpWebResponse;
except
end;
end;
Объяснение кода листинга программы
- Создается процедура под названием
createfolder, которая принимает строку в качестве параметра (номер 1). - В строке с номером 2 определены следующие константы и переменные:
reqFTPs- это переменная типаftpwebrequest, которая будет использоваться для создания запроса FTP.uriftp- это строковая переменная, которая содержит URL-адрес FTP сервера.urinak- это строковая переменная, которая содержит путь к каталогу, который необходимо создать на сервере.responsebrowser- это переменная типаftpwebresponse, которая будет использоваться для получения ответа от сервера.
- В строке с номером 5 происходит создание объекта
reqFTPsс использованием классаFtpWebRequest. - В строке с номером 6 устанавливаются параметры запроса: метод -
MakeDirectory, учетные данные -USERNAMEиPASSWORD, а также флагusebinaryустанавливается в значениеtrue. - В блоке try происходит получение ответа от сервера путем вызова метода
GetResponseу объектаreqFTPs. - В блоке except происходит обработка исключений, которые могут возникнуть при выполнении кода.
- Код завершается, и начинается следующая процедура или оператор.