出力バッファリングとAJAX

ユーザーが自分のサイトのボタンをクリックすると、ページの特定の部分がリフレッシュされますが、セクション全体をレンダリングするにはしばらく時間がかかります。セクション全体を終了するのではなく、セクションの表示/出力をリアルタイムで行うことは可能ですか?
htmlコンテンツのajaxリクエストとして送信するとどうすればいいですか?ありがとう

ベストアンサー

AJAX呼び出し(jQueryを使用している場合)で cache:true
を設定することをお勧めします。どちらの方法でも、HTTP応答ヘッダーを設定する必要があります。
ここにあります
cache-control ヘッダと expires
などを設定することで、AJAXリクエストは変更されていなければキャッシュからロードされます。これにより大幅にスピードアップします。

簡単な例:

if (!headers_sent()) {
   //seconds, minutes, hours, days
    $expires = 60*60*24*14;
    header('Pragma: public');
    header('Cache-Control: maxage=' . $expires);
    header('Expires: ' . gmdate('D, d M Y H:i:s', time() + $expires) . ' GMT');
}

注:これはPOSTリクエストでは機能しません。ちょうどGETです。

コメントする

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です