Как использовать прокси-сервер с Ruby Net ::FTP?

Я использую рубиновую библиотеку Net ::FTP для подключения к FTP-серверу и загрузки файлов. Все работает хорошо, но теперь мне нужно использовать исходящий прокси-сервер, так как их брандмауэр вносит в белый список IP-адреса, и я использую Heroku для размещения сайта. Я пробую новый Proximo add -, который выглядит многообещающе, но я не могу заставить Net ::FTP использовать его.

Я вижу следующее в документации Net ::FTP:

connect(host, port = FTP_PORT)

Establishes an FTP connection to host, optionally overriding the default port. If the environment variable SOCKS_SERVER is set, sets up the connection through a SOCKS proxy. Raises an exception (typically Errno::ECONNREFUSED) if the connection cannot be established.

Но попытка установить эту переменную среды или настройку ENV['SOCKS_SERVER'] = proximo_urlтоже не работает. Кто-нибудь знает, как это правильно сделать? Это не обязательно должен быть SOCKS-прокси, подойдет и HTTP-прокси, но я не уверен, что библиотека Net ::FTP поддерживает это.

... после некоторых исследований...

Я обнаружил, что Net ::FTP ищет класс с именем SOCKSSocket, для которого я нашел эти документы . Но не могу включить. include 'socket'возвращает false, что, я уверен, означает, что он уже загружен.

6
задан Erik J 27 July 2012 в 01:54
поделиться