2

AJAXを介してリモートCFCにユーザーのコメントを送信するajax投稿を行っています。コメント文字の長さが約7300文字になる場合を除いて、コードは常に正常に機能します。そうすると、まるでCFCが何もしないかのようです。

Firebugでは、7300文字未満で送信されたすべてのコメントに対して応答が正常に返されることがわかりますが、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>
4

1 に答える 1

7

HTTP GET または POST (つまり、URL または FORM) 経由で呼び出していますか? GET は、ほとんどのブラウザーでサイズ制限があるためです。

于 2011-03-05T19:33:35.113 に答える