Xpoint
   [напомнить пароль]

Upload файла на ftp методом PUT модуля LWP

Метки: [без меток]
[удл]
2006-11-06 14:03:03 [обр] Дмитрий Зюков[досье]

Пытаюсь загрузить файл на фтп сервер.
Файл на фтп сервере создается, но нулевой длины.

use LWP::UserAgent;

my $req=HTTP::Request->new(PUT=>"ftp://my.ftp.server/test.txt");
$ftp = LWP::UserAgent->new(agent=>'ftp-simple', timeout=>20);
$ftp->credentials('my.ftp.server:21', 'FTP login', 'my_account_name'=>'my_pwd');
my $res=$ftp->request($req, ':content_file'=>"C:/temp/test.txt");
print $res->as_string;

Результат выводимый на экран таков:

201 (Created) OK
Server: ProFTPD 1.3.0 Server (ProFTPD Default Installation) [ip.my.ftp.server]
Content-Type: text/plain
Client-Date: Mon, 06 Nov 2006 10:06:59 GMT
Client-Request-Num: 1

0 bytes stored as test.txt on my.ftp.server

Метод GET работает великолепно, получаю с сервера запрашиваемый файл, а вот обратный процесс не работает. Пожалуйста помогите, замаялся.

спустя 55 минут [обр] Роман Чемисов(36/350)[досье]
Дмитрий Зюков[досье]
А может просто сервер не хочет делать PUT, например, по соображениям безопасности?
спустя 26 минут [обр] Дмитрий Зюков[досье]
Роман Чемисов[досье] Хочет и делает, например, простой ftp клиент спокойно загружает файл.
А тут именно какая-то фишка, которой я не вижу. Файл же создает!!!
спустя 1 час 1 минуту [обр] Дмитрий Зюков[досье]

Вопрос решен.

How do I fetch/put an FTP file?

LWP::Simple (available from CPAN) can fetch but not put. Net::FTP (also available from CPAN) is more complex but can put as well as fetch.

Благодарю всех.

Powered by POEM™ Engine Copyright © 2002-2005