我正在做一个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/