加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 为什么FTPWebRequest或WebRequest一般不接受/../路径?

发布时间:2020-12-15 23:51:29 所属栏目:百科 来源:网络整理
导读:我试图从ftp Web服务器自动执行一些上传/下载任务.当我通过客户端或通过Firefox连接到服务器时,为了进入我的目录,我必须指定这样的路径: ftp://ftpserver.com/../AB00000/incoming/files 如果我尝试访问此内容: ftp://ftpserver.com/AB00000/incoming/file
我试图从ftp Web服务器自动执行一些上传/下载任务.当我通过客户端或通过Firefox连接到服务器时,为了进入我的目录,我必须指定这样的路径:

ftp://ftpserver.com/../AB00000/incoming/files

如果我尝试访问此内容:

ftp://ftpserver.com/AB00000/incoming/files

服务器抛出该目录不存在的错误.那么,问题是:

我试图用第一个ftp地址创建一个FTPWebRequest,但它总是解析“/../”部分,然后我的服务器说路径不存在.

我试过这些:

Uri target = new Uri("ftp://ftpserver.com/../AB00000/incoming/files");
FtpWebRequest request = (FtpWebRequest)WebReqeuest.Create(target);

string target = "ftp://ftpserver.com/../AB00000/incoming/files";
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(target);

在第一位,当实例化Uri对象时,路径已经不正确,在第二位,它在WebRequest.Create方法之后.有什么想法发生了什么?

编辑:

另外,由于我发布了这个,我尝试使用no parse选项创建URI.我也尝试过这样的事情:

string ftpserver = "ftp://ftpserver.com/../";
string path = "12345/01/01/file.toupload";

Uri = new Uri(ftpserver,path,true);

它总是解析根部分(“/../”).

解决方法

尝试使用类似的东西逃避..

Uri target = new Uri("ftp://ftpserver.com/%2E%2E/AB00000/incoming/files");

这是根据我在discussion发现的blog.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读