我们正在使用 Coldfusion 9。
是否有一种简单的方法可以知道在特定请求期间 enablecfoutputonly 是否已设置为 true?
我们正在使用 Coldfusion 9。
是否有一种简单的方法可以知道在特定请求期间 enablecfoutputonly 是否已设置为 true?
我现在无法使用 CF9 进行测试,但在 CF10 中,可以getPageContext()
通过检查输出对象来访问它:
<cfscript>
out = getPageContext().getOut();
// Is the cfsetting enablecfoutputonly value currently true?
isSettingEnabled = out.getDisableCount() > 0;
WriteOutput("isSettingEnabled="& isSettingEnabled &"<br>");
// Is output currently allowed?
isOuputtingEnabled = out.getDisableCount() == 0 || out.getOutputCount() > 0;
WriteOutput("isOuputtingEnabled="& isOuputtingEnabled &"<br>");
</cfscript>
..或使用反射:
<cfscript>
out = getPageContext().getOut();
internalMethod = out.getClass().getDeclaredMethod("isOutputEnabled", []);
internalMethod.setAccessible( true );
isOuputtingEnabled = internalMethod.invoke( out, [] );
// is output currently allowed?
WriteOutput("isOuputtingEnabled="& isOuputtingEnabled);
</cfscript>