本篇文章给大家谈谈C#类来解析WebRequestMethods.Ftp.ListDirectoryDetailsFTP响应,以及c#访问ftp的知识点,同时本文还将给你拓展.NETFtpWebReq
本篇文章给大家谈谈C#类来解析WebRequestMethods.Ftp.ListDirectoryDetails FTP响应,以及c#访问ftp的知识点,同时本文还将给你拓展.NET FtpWebRequest是否支持隐式(FTPS)和显式(FTPES)?、@RequestMapping(value={"/liu1","/liu2"},method = RequestMethod.GET)可以改为、asp.net – HttpMethod和HttpRequest的RequestType有什么区别?、asp.net – HttpRequest,HttpWebRequest和WebRequest之间的区别等相关知识,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:- C#类来解析WebRequestMethods.Ftp.ListDirectoryDetails FTP响应(c#访问ftp)
- .NET FtpWebRequest是否支持隐式(FTPS)和显式(FTPES)?
- @RequestMapping(value={"/liu1","/liu2"},method = RequestMethod.GET)可以改为
- asp.net – HttpMethod和HttpRequest的RequestType有什么区别?
- asp.net – HttpRequest,HttpWebRequest和WebRequest之间的区别
C#类来解析WebRequestMethods.Ftp.ListDirectoryDetails FTP响应(c#访问ftp)
我正在创建一个服务来监视FTP位置的新更新,并要求能够使用 WebRequestMethods.Ftp.ListDirectoryDetails
方法解析从 FtpWebRequest 响应返回的响应。如果所有响应都遵循相同的格式,则很容易,但是不同的FTP服务器软件提供不同的响应格式。
例如,一个可能返回:
08-10-11 12:02PM <DIR> Version206-25-09 02:41PM 144700153 image34.gif06-25-09 02:51PM 144700153 updates.txt11-04-10 02:45PM 144700214 digger.tif
并且另一台服务器可能会返回:
d--x--x--x 2 ftp ftp 4096 Mar 07 2002 bin-rw-r--r-- 1 ftp ftp 659450 Jun 15 05:07 TEST.TXT-rw-r--r-- 1 ftp ftp 101786380 Sep 08 2008 TEST03-05.TXTdrwxrwxr-x 2 ftp ftp 4096 May 06 12:24 dropoff
而且还观察到其他差异,因此可能存在许多我尚未遇到的细微差异。
是否有人知道可以无缝处理这些情况的完全托管(不需要在Windows上访问外部dll)的C#类?
我只需要列出具有以下详细信息的目录内容:文件/目录名称,最近更新或创建的时间戳,文件/目录名称。
预先感谢您的任何建议,加文
答案1
小编典典我遇到的一种解决方案是EdtFTPnet
EdtFTPnet似乎是一个功能强大的解决方案,可以处理许多不同的FTP选项,因此非常理想。
这是我在http://www.ftp2rss.com上使用的免费开源解决方案(我需要自己使用的一个小工具,但认为对其他人也可能有用)。
.NET FtpWebRequest是否支持隐式(FTPS)和显式(FTPES)?
如何解决.NET FtpWebRequest是否支持隐式(FTPS)和显式(FTPES)??
据我所知,当前(.NET 2.0和3.5)的FtpWebRequest版本仅支持显式SSL。
实际上,.NET 2.0当前不支持隐式SSL,仅支持显式。我们将考虑在以后的版本中添加它。
JonCole- MSDN论坛上的 MSFTModerator
如果需要同时使用隐式和显式TLS / SSL,则必须尝试使用第三方FTP / SSL组件之一。以下代码使用了我们的Rebex FTP / SSL,摘自教程页。
客户端以通常的非保护方式连接到FTP服务器,通常将端口21分配给FTP协议。当需要使用SSL保护连接时,将初始化SSL协商,确保控制连接的安全,并保护所有后续通信。
// Create an instance of the Ftp class.
Ftp ftp = new Ftp();
// Connect securely using explicit SSL.
// Use the third argument to specify additional SSL parameters.
ftp.Connect(hostname, 21, null, FtpSecurity.Explicit);
// Connection is protected Now, we can log in safely.
ftp.Login(username, password);
显式保护意味着可以随时保护连接。如果您不知道在连接时是否不需要保护,则可能要使用普通的未加密FTP协议进行连接,然后再保护连接。
Ftp ftp = new Ftp();
// Connect to the server with no protection.
ftp.Connect(hostname, 21);
// Upgrade connection to SSL.
// This method also accepts an argument to specify SSL parameters.
ftp.Secure();
// Connection is protected Now, we can log in safely.
ftp.Login(username, password);
FTPS协议最初是由IANA分配的。连接到该端口后,将立即开始SSL协商,并确保控制连接的安全。所有数据连接也以相同的方式隐式地得到保护。这类似于HTTPS使用的方法。
IETF不赞成使用此方法,不建议使用。Rebex FTP / SSL支持与旧服务器进行互操作,但是强烈建议尽可能使用显式保护。
Ftp ftp = new Ftp();
// Connect securely using implicit SSL.
// Use the third argument to specify additional SSL parameters.
ftp.Connect(hostname, 990, null, FtpSecurity.Implicit);
// Connection is protected Now, we can log in safely.
ftp.Login(username, password);
您可以从rebex.net/ftp-ssl.net/下载该组件。
解决方法
我被要求支持隐式和显式FTPS(也称为FTPES)。我们目前正在使用.NET
FtpWebRequest
。是否FtpWebRequest
支持两种类型的FTPES,有什么区别?
谢谢
@RequestMapping(value={"/liu1","/liu2"},method = RequestMethod.GET)可以改为
太长了
@RequestMapping(value={"/liu1","/liu2"},method = RequestMethod.GET)
可以改为
@GetMapping("/liu1")
asp.net – HttpMethod和HttpRequest的RequestType有什么区别?
HttpMethod:
Gets the HTTP data transfer method (such as GET,POST,or HEAD) used by the client.
06000
The HTTP data transfer method used by the client.
和RequestType:
Gets or sets the HTTP data transfer method (GET or POST) used by the client.
06001
A string representing the HTTP invocation type sent by the client.
这两个属性有什么区别?我什么时候想要使用一个在另一个?检查哪个是客户端使用什么数据传输方法?
该文档指示HttpMethod将返回任何使用的动词:
such as GET,or HEAD
而RequestType上的文档似乎只表示两个可能的值之一:
GET or POST
我用随机抽样的动词进行测试,这两个属性似乎都支持所有动词,并且都返回相同的值:
测试:
Client Used HttpMethod RequestType GET GET GET POST POST POST HEAD HEAD HEAD CONNECT CONNECT CONNECT MKCOL MKCOL MKCOL PUT PUT PUT FOOTEST FOOTEST FOOTEST
有什么区别:
> HttpRequest.HttpMethod
> HttpRequest.RequestType
什么时候应该使用一个?
解决方法
asp.net – HttpRequest,HttpWebRequest和WebRequest之间的区别
解决方法
WebRequest
是HttpWebRequest的抽象基类 – 您不能直接使用它。它是其他*请求类的基类(用于FTP,文件和其他类型的Web请求)。这些类都用于从Web获取资源(文件)。
还有一个WebClient
类 – 可能是使用所有用于从Internet检索资源的BCL类最简单的类。
另一方面,HttpRequest
表示ASP.NET应用程序中资源的请求 – 这是请求的服务器端。
主要的区别是HttpWebRequest是HTTP客户端,HttpRequest是在ASP.NET Web应用程序中使用的服务器端。
关于C#类来解析WebRequestMethods.Ftp.ListDirectoryDetails FTP响应和c#访问ftp的介绍现已完结,谢谢您的耐心阅读,如果想了解更多关于.NET FtpWebRequest是否支持隐式(FTPS)和显式(FTPES)?、@RequestMapping(value={"/liu1","/liu2"},method = RequestMethod.GET)可以改为、asp.net – HttpMethod和HttpRequest的RequestType有什么区别?、asp.net – HttpRequest,HttpWebRequest和WebRequest之间的区别的相关知识,请在本站寻找。
本文标签: