2008/07/12

[coldfusion][javascript]jsからのhttpリクエストが遅い件

javascriptから、ActiveXObject(IEの場合)または、XMLHttpRequest(FireFoxの場合)を使ってhttpリクエストを要求するajaxがあるのですが、リクエスト先のファイル名がcfmの場合、ものすごく遅いのは、なぜかなーと思っていたのですが、やっとその謎がとけました。

実は、リクエスト先のcfmのデバッグ情報をoffにしないと、リクエスト元にデバッグ情報まで送信してしまうことになり、ものすごく負荷がかかっていました。

下のようにデバッグ情報をオフにするタグを追加すると、ものすごく処理が早くなります。


<!---utf-8で処理を行います。--->
<cfprocessingdirective pageEncoding="utf-8" />
<!---cfoutputの中にある処理だけ返します。--->
<cfsetting enableCFoutputOnly="yes" />
<!---デバッグ情報をオフにします。(ここが重要)--->
<cfsetting showdebugoutput="no">
・・・処理・・・
<cfoutput>値を返す。</cfoutput>

これでtxtファイル並みにレスポンスが早くなると思います。

だいぶ前に、XMLHTTPRequestという共通ファンクションを作成した以来、ずっと疑問に思っていたことが氷解したので、ものすごくすっきりしました。

0 コメント:

コメントを投稿