FtpWebRequest Azure接收

时间:2015-09-04 14:52:30

标签: c# azure ftp filezilla

我正在使用Windows Azure云。

我正在尝试列出来自FTP站点的文件。该软件在我的本地机器上工作正常,但是,我得到一个关于我的Windows防火墙的弹出窗口。使用Windows Azure Cloud,有没有办法为FTP Web请求添加防火墙规则?

我客户的FTP服务器仅支持有效配置:

注意!!请确保您处于“活动”模式,因为“被动”模式不起作用。主动FTP要求客户端防火墙允许高于>的流量。 1023从港口20& 21.端口20是大多数人忘记允许的数据通信端口。检查硬件防火墙和软件防火墙,如(XP防火墙)。

这是错误:

System.Net.FtpClient.FtpCommandException: Cannot open data connection.

这是我的代码:

        private FtpClient GetFtpClient()
        {
            FtpClient ftp = new FtpClient();
            ftp.Host = m_FtpUrl;
            ftp.DataConnectionType = FtpDataConnectionType.AutoActive;
            ftp.Credentials = new NetworkCredential(m_FtpUserName, m_FtpPassword);
            ftp.SetWorkingDirectory("/Orders/Archive/");
            return ftp;
        }

        private List<string> ListFiles()
        {
            List<string> lines = new List<string>();
            FtpClient ftp = GetFtpClient();
            foreach (FtpListItem item in ftp.GetListing(ftp.GetWorkingDirectory()))
            {
                if (item.Type == FtpFileSystemObjectType.File)
                    lines.Add(item.Name);
            }

            return lines;
        }

我已在端点中允许端口20,21和1023:

enter image description here

当我使用FileZilla时,响应是:

Status: Disconnected from server
Status: Resolving address of trade.marketplace.buy.com
Status: Connecting to 209.67.181.90:21...
Status: Connection established, waiting for welcome message...
Status: Connected
Status: Retrieving directory listing...
Command:    PWD
Response:   257 "/" is current directory.
Command:    TYPE I
Response:   200 Type set to I.
Command:    PORT 209,67,181,90,23,189
Error:  Disconnected from server: ECONNABORTED - Connection aborted

0 个答案:

没有答案