代码之家  ›  专栏  ›  技术社区  ›  Karthik Swaminathan

使用ajax调用从另一个CFC访问函数时“来自服务器的无效答复”

  •  0
  • Karthik Swaminathan  · 技术社区  · 8 年前

    我的应用程序中的一个页面,使用应用程序。cfc调用Ajax中定义的函数。cfc文件使用JavaScript(DWREngine)填充页面加载下拉列表。当我加载该页面时,会出现一个错误,显示“来自服务器的无效响应”,并且下拉列表不会填充。

    用于Ajax中的函数。在cfc中,访问属性设置为“远程”。

    我不确定为什么ajax文件不返回响应。 如果你还需要什么来回答我的问题,请告诉我。

    更新(抱歉迟到): 我在Application.cfc中的onRequestStart方法中添加了这段代码:

    <cfif ListLast(CGI.CF_TEMPLATE_PATH, ".") is "cfc">
       <cfset StructDelete(this,'onRequest')>
    </cfif>
    

    当从相同/子目录中的另一个CFC调用onRequest方法时,会导致Ajax失败。我还需要onRequest和Ajax,因此找到了这个解决方法。

    2 回复  |  直到 8 年前
        1
  •  1
  •   BKBK    8 年前

    在您的解决方案中,“this”指的是组件应用程序。cfc,它不是一种结构。您需要的是结构、变量,因此

    <cfset StructDelete(variables,'onRequest')>
    
        2
  •  0
  •   Karthik Swaminathan    8 年前

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

    <cfif ListLast(CGI.CF_TEMPLATE_PATH, ".") is "cfc">
       <cfset StructDelete(this,'onRequest')>
    </cfif>
    

    当从相同/子目录中的另一个CFC调用时,onRequest方法会导致Ajax失败。我还需要onRequest和Ajax,因此找到了这个解决方法。

    推荐文章