coldfusion - Coldfusion 8 和 2016:CFEXECUTE 不返回结果/错误
问题描述
我在浏览器中得到的只是一个空白屏幕。如果我不使用 IsDefined,我会在页面中收到一条错误消息,指出该变量不存在。
如果我拼错了一个命令(例如:使用 /bin/bsh 而不是 /bin/bash),我会收到一个异常,指出 CF 找不到该程序。所以它似乎正在工作。我只是想检查它是否真的在运行。
这是我的代码:
------
<cfexecute name="/bin/ls" arguments=" -la /" errorVariable="error" variable="result"></cfexecute>
<cfif IsDefined("result")>
<cfdump var="#result#">
</cfif>
<cfif IsDefined("error")>
<cfdump var="#error#">
</cfif>
<cfexecute name="/bin/bash" arguments=" -c '/bin/ls -la /'" errorVariable="error" variable="result"></cfexecute>
<cfif IsDefined("result")>
<cfdump var="#result#">
</cfif>
<cfif IsDefined("error")>
<cfdump var="#error#">
</cfif>
解决方案
您需要指定一个timeout
oncfexecute
才能按顺序获得有效的结果/错误。
默认timeout
是0
,它是非阻塞的,这意味着你的命令是异步执行的。这意味着您不会立即得到结果。
我不确定对于 Adobe,“非阻塞”是否意味着完全忽略或最终设置variable
and属性。error
如果你好奇,你可以扔进cfsleep
去找出来,只是请不要在生产中。:)
推荐阅读
- python - 如何根据 event_type 将 google bigquery 中的大型事件表拆分为多个表?
- c++ - 游戏引擎:类参数
- c# - linq2db 异常:“未提供配置字符串”。我没有 web/app.config,但即使我明确给出字符串,同样的异常
- javascript - 带有加载更多按钮的可折叠列表以显示此列表中的所有项目
- python - 在表格的两列下添加标题
- php - cURL 请求在本地工作正常,但在远程服务器上没有返回任何数据
- flutter - 在颤振中输入名称后如何将模板另存为图像
- php - PHP 无法在 url 中带有 id 的页面上使用表单添加到 db 并返回到 url 中带有 id 的页面
- pyomo - cyipopt 如何用作 Pyomo 求解器?当前面临执行错误
- python - 在 Python 中运行两个脚本