Я использую Ruby 1.9.3 и выполняю следующую команду:
open("ftp://user name:[email protected]/1234/1234.txt.gz")
который возвращает:
URI::InvalidURIError: неверный URI (это не URI?)
Кодирование имени пользователя (замена пробелов на %20) также не работает:
Net::FTPPermError: 530 Неверный идентификатор пользователя/пароль
URI отлично работает во всех протестированных браузерах и FTP-клиентах, но не при использовании OpenURI. Кроме того, использование Net::FTP (обернутое OpenURI) также отлично работает:
require 'net/ftp'
ftp = Net::FTP.new
ftp.connect("datafeeds.domain.com", 21)
ftp.login("user name", "password")
ftp.getbinaryfile("/1234/1234.txt.gz")
Есть идеи, почему метод OpenURI не работает, а метод Net::FTP работает? Спасибо.