我正在做一个Ajax帖子,该帖子通过AJAX将用户的评论提交到远程CFC。该代码始终可以正常工作,除非注释字符长度达到大约7300个字符。然后,就好像CFC什么也没做。

在Firebug中,我可以看到对于提交的所有 7300个字符的数据包,此响应为空白。

因此,自然地,我在被调用的远程cfc方法中添加了一些简单的日志记录。我删除了所有代码,只是做了一些简单的日志记录,即使没有执行任何记录,该命令也没有执行。从评论中删除一些字符,然后重新提交,它将再次起作用。

因此,有些事情使我相信对于发送的大于7300个字符的大数据包,CFC会以某种方式拒绝该请求。这可能吗?可能是什么原因造成的吗?我已经查看了管理员,但没有与此相关的任何设置。

任何帮助,将不胜感激。谢谢。

以下是CFC的代码。我发现不必要提交任何jquery / ajax javascript代码,因为它确实有效,并且此问题与请求的大小有关,但是如果您认为有帮助,请告诉我,我也将其发布。

CFC被称为:

<cffunction name="callFunction" access="remote" returntype="any" output="false">
        <cfargument name="cfc" type="string" required="yes" hint="The path or alias for the cfc to call" />
        <cfargument name="functionName" type="string" required="yes" hint="The function name within the requested cfc to call" />
        <cfargument name="returnFormat" type="string" default="json" hint="The format of the repsonse: xml, json, wsdl, etc." />
        <cfargument name="jsonData" type="string" required="false" />
        <cfargument name="isLoginRequired" type="boolean" default="true" />
        <cfset application.Security.LogItem("CFC: #arguments.cfc#", false, false) />
        <cfset application.Security.LogItem(arguments.jsonData, false, false) />

        <cfset var sResponse = this.Utilities.GetNewResponse() />
        <cfreturn sResponse /></cffunction>

最佳答案

您是通过HTTP GET还是POST(即URL或FORM)进行呼叫?因为GET在大多数浏览器中都受大小限制。

关于jquery - 大型JSON数据包导致Ajax调用期间远程CFC无响应,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5202340/

10-12 12:35