传递ftp连接名称作为参数

时间:2013-06-07 08:55:42

标签: coldfusion

我创建了一个getImageFile()函数,它需要以下参数:

  • ftp连接名称
  • 远程文件
  • localfile

在函数内,ColdFusion抛出一个错误,表明连接未定义。但是,如果我在调用者函数中使用ftp连接名称,那么它就可以工作。

<cffunction name="getImageFile" access="private" returntype="string" >
    <cfargument name="ftpcon" type="any" required="yes" >
    <cfargument name="remotefile" type="string" required="yes" >
    <cfargument name="localfile" type="string" required="yes" >

    <cfftp action="GetFile"
           connection="#Arguments.ftpcon#"
           localfile= "#Arguments.localfile#"
           remotefile="#Arguments.remotefile#"
           stopOnError="false"
           transfermode="binary"
           failIfExists="false">

    <cfdump var="#cfftp#">
</cffunction>

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

您应该能够从函数中删除连接名称参数ftpcon。根据{{​​3}}(在使用部分下),GetFile等简单操作不需要它。

  

您无需为单个简单的FTP操作(如GetFile或PutFile)打开连接。

当然,您需要在函数中指定连接的server, username, password等。

只有connectioncfftp时才需要action="open"代码的action="close"属性。

话虽这么说,你也应该能够像你想要的那样使用缓存连接(我推测)。请提供错误详情,如有需要,我会更新此答案。