"Invalid reply from server" 使用 ajax 调用从另一个 CFC 访问函数时

"Invalid reply from server" when accessing a function from another CFC using ajax call

我的应用程序中的一个页面使用 Application.cfc,使用 JavaScript (DWREngine) 调用 Ajax.cfc 文件中定义的函数来填充页面加载时的下拉列表。当我加载该页面时,我收到一条错误消息 "invalid response from server" 并且下拉列表未填充。

对于Ajax.cfc中的函数,访问属性设置为"remote"。

我不确定为什么 ajax 文件没有发回响应。 如果您还需要其他任何东西来回答我的问题,请告诉我。

更新(抱歉来晚了): 我在 Application.cfc:

的 onRequestStart 方法中添加了这段代码
<cfif ListLast(CGI.CF_TEMPLATE_PATH, ".") is "cfc">
   <cfset StructDelete(this,'onRequest')>
</cfif>
当从 same/sub 目录中的另一个 CFC 调用时,

onRequest 方法导致 Ajax 失败。我还需要 onRequest 和 Ajax 所以找到了这个解决方法。

我在Application.cfc的onRequestStart方法中添加了这段代码:

<cfif ListLast(CGI.CF_TEMPLATE_PATH, ".") is "cfc">
   <cfset StructDelete(this,'onRequest')>
</cfif>
当从 same/sub 目录中的另一个 CFC 调用时,

onRequest 方法已知会导致 Ajax 失败。我还需要 onRequest 和 Ajax 所以找到了这个解决方法。

在您的解决方法中,'this' 指的是组件 Application.cfc,它不是结构。你要的是结构,变量,因此

<cfset StructDelete(variables,'onRequest')>