第 21 章 FTP
支持制作者和消费者
这个组件提供对通过 FTP 和 SFTP 协议的远程文件系统的访问。
当使用远程 FTP 服务器时,请确保在进一步使用 文件时使用名为 Default 的部分,以了解与使用文件相关的详细信息。
不支持 绝对路径。Camel 通过修剪来自 目录名
的所有前导斜杠,将绝对路径转换为相对路径。日志中会显示 WARN 消息。
Maven 用户需要在这些组件的 pom.xml
中添加以下依赖项:
<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-ftp</artifactId> <version>{CamelSBVersion}</version>See the documentation of the Apache Commons <!-- use the same version as your Camel core version --> </dependency>
21.1. URI 格式
ftp://[username@]hostname[:port]/directoryname[?options] sftp://[username@]hostname[:port]/directoryname[?options] ftps://[username@]hostname[:port]/directoryname[?options]
其中 directoryname 代表底层目录。目录名是一个相对路径。不支持 绝对路径。相对路径可以包含嵌套文件夹,如 /inbox/us。
支持 autoCreate
选项。当消费者启动时,在调度轮询前,需要执行额外的 FTP 操作来创建为端点配置的目录。autoCreate
的默认值为 true
。
如果没有提供 用户名,则会尝试使用任何密码进行 匿名
登录。
如果没有提供 端口号,Camel 将根据协议提供默认值(ftp = 21, sftp = 22, ftps = 2222)。
您可以采用以下格式将查询选项附加到 URI 中,?option=value&option=value&…
此组件将两个不同的库用于实际的 FTP 工作。FTP 和 FTPS 使用 Apache Commons Net,而 SFTP 使用 JCraft JSCH。
FTPS(也称为 FTP Secure)是 FTP 的一个扩展,增加了对传输层安全(TLS)和安全套接字层(SSL)加密协议的支持。