Я хочу загрузить и загрузить файл на FTP через ssl с пользовательским номером порта или FTP с неявным SSL.
Я использую метод .net ftpwebrequest & ftpwebresponse для этого.
вот мой код:
Dim reqObj As FtpWebRequest = CType(WebRequest.Create(_Url + filename), FtpWebRequest)
reqObj.Method = WebRequestMethods.Ftp.UploadFile
reqObj.KeepAlive = False
If _IsSSLEnable Then
reqObj.UseBinary = True
End If
reqObj.Credentials = New NetworkCredential(_UserName, _Password)
If _IsSSLEnable Then
reqObj.EnableSsl = _IsSSLEnable Net.ServicePointManager.ServerCertificateValidationCallback = AddressOf validateCert
End If
Dim streamResponse As Stream
streamResponse = reqObj.GetRequestStream()
Я получаю ошибку после этого ...
Сервер возвратил адрес в ответ на команду PASV, отличный от адреса, с которым было установлено FTP-соединение.
Но если я добавлю
reqObj.UsePassive = False
Это дает мне ошибку:
Время ожидания истекло
это нормально работает для обычного ftp и ftp через ssl, но не для нестандартного номера порта или неявного ssl.
Скажите, пожалуйста, поддерживает ли .net это?
Или я должен использовать другой метод для этого случая
Спасибо
Hemant