从链接运行Coldfusion功能服务器端

时间:2018-11-14 13:00:54

标签: function coldfusion

我有一个cfm页面,其中包含一个函数,并根据作为url变量传递给该页面的一些参数来运行该函数。我的要求是通过超链接/按钮调用页面,但不能在浏览器中打开页面。客户端浏览器必须保留在带有超链接/按钮的页面上。

更多说明:

我有一个具有以下代码的ringout.cfm页面:

<cfinclude template="/functions/easySocket.cfm">
<cfset NL = chr(13) & chr(10) />
<cfset extension = #url.user_extension#>
<cfset outbound_line=#url.partner_line#>
<cfset target_number=#url.target_number#>
<cfset call_type="from-internal">
<cfset call_id="12345">
<cfset caller_id="Blah Blah">
<cfset APICommand="Action: Login#NL#Username: tst#NL#Secret: tst#NL##NL#Action: Originate#NL#Channel: PJSIP/#extension##NL#Exten: #outbound_line##target_number##NL#Context: #call_type##NL#Priority: 1#NL#Callerid: #caller_id##NL#ActionID: #call_id##NL#Async: true#NL##NL#">
<cfoutput>
#easySocket('222.222.xx.xx','5038', APICommand)#
</cfoutput>

我想从另一个页面(contacts.cfm)中调用上面的页面,而不离开该页面。我的contacts.cfm中有以下代码:

<a href="#buildUrl("crm.ringout")#&target_number=<cfoutput>#reReplace(#contact_mobile#, "[[:space:]]", "", "ALL")#</cfoutput>&partner_line=302&user_extension=204" runat="server">#contact_mobile#&nbsp</a>

我要做的就是运行ringout.cfm页面服务器端。

1 个答案:

答案 0 :(得分:1)

您提供的信息很少,也没有代码。但是据我了解,您可以做到。在您的xxx.cfm中添加此代码

<cfif structKeyExists(URL,"YOUR_URL_VAR")>
<!--- call your function here, generate the desired output and show as plain text/html or json format. Abort the processing if you know this variable will only exist for specific hyperlink/button call--->
  <cfabort>
</cfif>

然后使用您的链接调用xxx.cfm,并传递所需的url变量。