【问题标题】:Error unable to connect to remote server when upload file to remote server将文件上传到远程服务器时出现无法连接到远程服务器的错误
【发布时间】:2013-07-26 16:56:55
【问题描述】:

我使用此代码将文件上传到服务器。

Dim clsRequest As System.Net.FtpWebRequest = _
                DirectCast(System.Net.WebRequest.Create(a), System.Net.FtpWebRequest)
            clsRequest.Credentials = New System.Net.NetworkCredential(username, pwd)
            clsRequest.Method = System.Net.WebRequestMethods.Ftp.UploadFile

            ' read in file...
            Dim bFile() As Byte = System.IO.File.ReadAllBytes(pdfPath)

            ' upload file...
            Dim clsStream As System.IO.Stream = _
                clsRequest.GetRequestStream()
            clsStream.Write(bFile, 0, bFile.Length)
            clsStream.Close()
            clsStream.Dispose()

但是显示错误无法连接到远程服务器 Dim clsStream As System.IO.Stream = _ clsRequest.GetRequestStream()。有错吗?

【问题讨论】:

  • 您确定您传递了正确的 FTP Uri 和凭据吗?
  • 错误从 Dim clsStream As System.IO.Stream = _ clsRequest.GetRequestStream() 行开始
  • 或者我如何检查 FTP Uri 和凭据?
  • 尝试在支持的浏览器或 FTP 客户端中打开 FTP 连接。
  • @Alexander U 的意思是单击 CTRL 并点击链接?我使用此代码检查文件是否存在并且正在工作。 Dim request = DirectCast(WebRequest.Create("ConnDocVault"), FtpWebRequest) request.Credentials = New NetworkCredential(username, pwd) request.Method = WebRequestMethods.Ftp.GetFileSize 尝试 Dim response As FtpWebResponse = DirectCast(request.GetResponse() , FtpWebResponse)。

标签: vb.net


【解决方案1】:

使用 FTP 协议需要在远程机器上运行专用的 FTP 服务器软件。没有它,FTP 无法访问网络驱动器。如果您只想访问网络上的文件,请从这个 SO 问题开始: Copying files to a mapped drive while user is not logged in (scheduled task)

出于安全原因,我强烈建议在此之前执行几个步骤: a) 不要打开像 C$ 这样的根共享。 b) 在您的“远程”服务器上创建特定共享,在该服务器上,您仅为该特定目的授予用户访问权限。

关于 FTP 的进一步阅读:http://en.wikipedia.org/wiki/File_Transfer_Protocol

【讨论】:

    猜你喜欢
    • 2013-06-04
    • 1970-01-01
    • 1970-01-01
    • 2018-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-13
    • 2013-04-16
    相关资源
    最近更新 更多