【问题标题】:Ftp : Unable to connect to remote server exceptionFtp:无法连接到远程服务器异常
【发布时间】:2014-09-08 05:58:04
【问题描述】:

我有一个网站,用于将文件 (excel) 上传到服务器,它最终将它们从服务器上传到 FTP 站点。我无法将文件上传到 ftp。得到错误。我可以将文件上传到我的本地系统。

public ActionResult FileUpload(HttpPostedFileBase file_Uploader, FormCollection formcoll)
{
    try
    {
        string fileName = string.Empty; string filePath = string.Empty;
        filePath = file_Uploader.FileName;
        fileName = Path.GetFileName(file_Uploader.FileName);
        string ftpAddress = "10.99.248.83"; //string ftpAddress = "D://";
        string username = "prashant.rathod"; string password = "********";

        using (StreamReader stream = new StreamReader("" + filePath))
        {
            byte[] buffer = Encoding.Default.GetBytes(stream.ReadToEnd());

            FtpWebRequest request = (FtpWebRequest)FtpWebRequest.Create("ftp://" + ftpAddress + "/" + "rs/Files" + "/" + fileName);                 
            //WebRequest request = WebRequest.Create(ftpAddress + "/" + "Work" + "/" + fileName);
            request.Method = WebRequestMethods.Ftp.UploadFile;
            request.Credentials = new NetworkCredential(username, password);
            request.Proxy = null;
            Stream reqStream = request.GetRequestStream();
            reqStream.Write(buffer, 0, buffer.Length);
            reqStream.Close();
        }

    }
    catch (Exception ex)
    {

    }
}

【问题讨论】:

  • 我也收到一个错误:User failed to provide the error message

标签: c# asp.net asp.net-mvc-3


【解决方案1】:
catch (Exception ex)
{

}

我在想,如果你真的在这里打印出异常,例如:

Debug.Writeline(ex.ToString());

它可能会准确地告诉你问题是什么。捕获异常然后忽略它们几乎总是一个坏主意。

如果您确实收到了不错的错误消息,则需要检查它告诉您的内容。上传到本地盒子的能力并不能保证能够上传到其他任意盒子。

我可能会尝试的第一件事是尝试使用其他工具(例如经过验证的 FTP 客户端)连接到有问题的服务器。这会将问题隔离到服务器或您的代码。

【讨论】:

  • 不,OP 声明他们遇到了错误。我只能收集到,因为他们没有告诉我们错误是什么,信息不可用。因此得到了答案。如果 try/catch 中的任何方法引发异常,它将是不可见的。
  • 我收到异常“无法连接到远程服务器异常”
  • @Prashant,当您丢弃异常时,我发现这有点难以置信。
  • 添加了调试并得到了这个“无法连接到远程服务器”ex.StackTrace:在 System.Net.FtpWebRequest.GetRequestStream()
  • @Prashant,当您尝试手动 FTP 到该站点(例如使用您最喜欢的 FTP 客户端)时会发生什么?