我有一个CFC,它返回一个包含部分URL的字符串。我想将此连接到网站域名的末尾,以便它创建一个完全限定的URL。
但是,ColdFusion在连接之前创建了一个空格。以下是我的连接方式:
http://www.mywebsite.com#APPLICATION.MyCFC.GetURL(urlid = url.id)#
所以我们有两个部分:
/products/20
然而最终的输出结果如下:
http://www.mywebsite.com /products/20
因此,出于某种原因,它在将来自CFC的字符串连接之前放置一个空格。我试图在CFC调用周围放置Trim()
,但它没有做任何事情。
我还试图将CFC中的字符串放在像<cfset myurl = #APPLICATION.MyCFC.GetURL(urlid = url.id)#
这样的变量中。然后我将这个变量连接到这样的域:http://www.mywebsite.com/#url#
并且它可以正常工作而不添加任何空格。
为什么这样做?每次我想使用它时,我都不想继续将CFC的输出存储在另一个局部变量中。
这是来自CFC的代码(我为了保密和清晰而省略了数据库的内容,但基本上就是这样):
<cffunction name="GetURL" access="public" returntype="string">
<cfargument name="urlid" required="yes">
<cfset var result="/products/#urlid#">
<cfreturn result>
</cffunction>
答案 0 :(得分:4)
将output="false"
添加到<cffunction>
(如果不是UDF,则为<cfcomponent>
)可以解决您的问题。