Реализация SOCKS 5 Proxy в FTP WebRequest C # [дубликат]

Я не уверен, почему вы хотите проверить дополнительный адрес электронной почты, но я бы посоветовал вам использовать

^$|^[^@\s]+@[^@\s]+$

, что означает

^$        empty string
|         or
^         beginning of string
[^@\s]+   any character but @ or whitespace
@         
[^@\s]+
$         end of string

Вы выиграли 't прекратить поддельные электронные письма в любом случае, и таким образом вы не прекратите действительные адреса.

2
задан Martin Prikryl 28 March 2017 в 19:01
поделиться

1 ответ

FTP-клиенты .NET framework (FtpWebRequest или WebClient) не могут подключиться с использованием прокси SOCKS, поддерживаются только HTTP [только скачивание] и прокси-серверы ISA :

Класс FtpWebRequest поддерживает прокси-серверы HTTP и ISA Firewall Client.

Если указанный прокси-сервер является прокси-сервером HTTP, поддерживаются только команды DownloadFile, ListDirectory и ListDirectoryDetails.

Итак, вам нужно использовать стороннюю библиотеку FTP.


Например, с помощью сборки WinSCP .NET вы можете использовать:

// Setup session options
SessionOptions sessionOptions = new SessionOptions
{
    Protocol = Protocol.Ftp,
    HostName = "example.com",
    UserName = "user",
    Password = "mypassword",
};

// Configure proxy
sessionOptions.AddRawSettings("ProxyMethod", "2"); // SOCKS5 proxy
sessionOptions.AddRawSettings("ProxyHost", "proxy");

using (Session session = new Session())
{
    // Connect
    session.Open(sessionOptions);

    // Your code
}

Для параметров для SessionOptions.AddRawSettings см. исходные настройки .

Легче, чтобы WinSCP GUI генерировал C # FTP код шаблона для вас.

Обратите внимание, что сборка WinSCP .NET не является родной библиотекой .NET. Это довольно тонкая оболочка .NET поверх консольного приложения.

(я автор WinSCP)

1
ответ дан Martin Prikryl 16 August 2018 в 01:46
поделиться
  • 1
    Мне удалось загрузить файл, используя вашу библиотеку, но я не использовал прокси. Я понял, что свободных прокси-серверов socks5 нет. Можно ли использовать сеть tor? – Elfin Grot 22 March 2017 в 20:08
  • 2
    Нет, tor не поддерживается. И это другой вопрос. – Martin Prikryl 22 March 2017 в 20:29
Другие вопросы по тегам:

Похожие вопросы: