作为Apache Camel的新手,我一直在关注互联网上的例子。在每本书/论坛/博客文章附近都有一个例子,说明如何创建一个简单的路径,用于向/从FTP服务器使用/生成文件。
我的问题是我尝试使用建议的连接
连接到的主机from("ftp://someone@someserver.com?password=secret&localWorkDirectory=/tmp")
OR
<from uri="ftp://someone@someserver/public/reports?password=password"/>
当我使用我的主机提供给我的凭据时,对我不起作用:
为了这个例子,我们可以调用FTP详细信息:
FTP用户名:username@ftpserverhost.com 密码:密码
因此,当我用我的服务器凭据替换建议的URI时,它无法连接。我假设这是因为它有两个@符号,这导致路由有些混乱。
from("ftp://username@ftpserverhost.com@ftpserverhost.com?password=secret&localWorkDirectory=/tmp")
OR
<from uri="ftp://username@ftpserverhost.com@ftpserverhost.com/public/reports?password=password"/>
有没有办法逃脱@或让这个工作?我问过我的主人是否有可能离开@ ftpserverhost.com,但是他们告诉我它不会工作。
有什么想法吗?
答案 0 :(得分:0)
使用username
选项:
from("ftp://ftpserverhost.com?password=secret&localWorkDirectory=/tmp&username=username@ftpserverhost.com")
如果这不起作用且使用Camel 2.11或更高版本,则可以使用RAW
语法:
from("ftp://ftpserverhost.com?password=secret&localWorkDirectory=/tmp&username=RAW(username@ftpserverhost.com)")
如果您的选项包含RAW
,&
或其他不得编码的特殊字符,+
语法也会派上用场。