我的应用程序中的一个页面使用 Application.cfc,使用 JavaScript (DWREngine) 调用 Ajax.cfc 文件中定义的函数来填充页面加载时的下拉菜单。当我加载该页面时,收到一条错误消息“来自服务器的响应无效”,并且下拉列表未填充。
对于Ajax.cfc中的函数,访问属性设置为“remote”。
我不确定为什么 ajax 文件没有发回响应。 如果您需要其他信息来回答我的问题,请告诉我。
更新(抱歉迟到了): 我在Application.cfc的onRequestStart方法中添加了这段代码:
<cfif ListLast(CGI.CF_TEMPLATE_PATH, ".") is "cfc">
<cfset StructDelete(this,'onRequest')>
</cfif>
当从同一/子目录中的另一个 CFC 调用 onRequest 方法时,onRequest 方法会导致 Ajax 失败。我还需要 onRequest 和 Ajax,所以找到了这个解决方法。
最佳答案
在您的解决方法中,“this”指的是组件 Application.cfc,它不是一个结构。你想要的是结构、变量,因此
<cfset StructDelete(variables,'onRequest')>
关于javascript - 使用 ajax 调用从另一个 CFC 访问函数时出现 "Invalid reply from server",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40133241/