0

我是 ColdFusion 的新手。我有 Application.cfm 并想添加一个 onRequestStart 函数,但它不起作用。我的意思是,当页面调用某些应用程序变量(在`onRequestStart 中设置)时,会生成一个错误,因为这些变量不存在。

我不能使用 Application.cfc。是否有解决方案或其他方式将 onRequestStart 与 Applciation.cfm 一起使用?

4

3 回答 3

1

所以我不太确定你想用 Application.cfm 做什么,但就像 Ageax 说的那样,Application.cfm 在每个请求上运行(无论你为 onRequestStart() 函数考虑的任何工作流程,你都可以在应用程序.cfm)

如果您真的想要 Application.cfm 中的 onRequestStart 函数,您可以创建自己的函数并在这样之后显式调用它


应用程序.cfm

<cfset Application.test = " AND IS USING AN Application Var :D!!  ">

<cfscript>

    function onRequestStart(){  
        RETURN "THIS HAPPENS AT THE START OF EVERY REQUEST! #Application.test#";
    }

</cfscript>

<cfoutput> #onRequestStart()#  </cfoutput> 

如果您没有被迫使用 Application.cfm,那么这个问题和文章可能对您来说很有趣

ColdFusion:是否存在 Application.cfm 比 Application.cfc 更可取的用例

从 Application.cfm 迁移到 Application.cfc

于 2018-01-17T18:54:47.257 回答
1

如果您需要使用 Application.cfm(不确定为什么这是一个要求,因为 Application.cfc 已经存在了很长时间),它处理基本的 onRequestStart 功能,并在每个 *.cfm 文件之前加载。

您可以通过创建 OnRequestEnd.cfm 文件来添加 onRequestEnd 功能。

更好的参考:Coldfusion 使用 onRequestEnd() 和 Application.cfm 文件

于 2018-01-18T04:24:08.490 回答
0

请将 requestStart.cfm 文件添加到您的项目中,将您的代码放入此文件中。它将在每个请求(开始)上运行。

于 2018-01-17T15:20:19.083 回答