cout_header

HTTP応答ヘッダキューの内容を送信する。

定義

関数の型 #include <acpplib.h>
void cout_header(void)
引数なし
戻値なし

説明

HTTP応答ヘッダキューの内容を送信します。
C++ for CGIは内部にフラグを持っており、2回以上HTTP応答ヘッダキューの内容を送信しません。

C++ for CGI は HTTP応答ヘッダキューを送信する際にキューの中に"Content-Type:"という文字列があるかどうか検索します。"Content-Type:"がない場合は"Content-Type: text/html"を付加して送信します。

HTTPでは応答ヘッダとエンティティー(本体)を空行で区切ります。cout_header関数はこの空行も出力します。
クッキーは HTTP応答ヘッダの部分に混ぜて送信します。空行は HTTP応答ヘッダの最後と認識されますので、空行を出力するとクッキーを保存することができなくなります。クッキーを保存する場合は cout_header関数 , cout_head関数 , cout_body関数 , begin_html関数を使用してはいけません。
クッキーの値は天下り変数で利用できますので、クッキーの値を利用するだけの場合は使用しても問題ありません。
クッキーに値を記録する場合は、cout_header関数の前にsetcookie関数を利用します。

同じようにHTTP 応答ヘッダキューの内容を送信するプリプロセス指令として、#pragma COUT_HEADERがあります。

注意

  1. HTTP応答ヘッダキューが空であったり、中に"Content-Type:"がない場合は"Content-Type: text/html"を付加して送信する。
  2. cout_header関数を使うと、クッキーの保存ができなくなる。