如何从Application.cfm调用OnRequestStart

时间:2018-01-17 14:52:04

标签: coldfusion application.cfm

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

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

3 个答案:

答案 0 :(得分:1)

所以我不确定你在尝试使用Application.cfm做什么,但是就像Ageax所说,Application.cfm会在每个请求上运行(无论你为onRequestStart()函数考虑过什么工作流程你可以在Application.cfm中完成

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

<强> Application.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: Are there any use cases where an Application.cfm is preferable to an Application.cfc

Migrating from Application.cfm to Application.cfc

答案 1 :(得分:1)

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

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

更好的参考:Coldfusion using onRequestEnd() with Application.cfm files

答案 2 :(得分:0)

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