Webを支える技術 第9章 HTTPヘッダ その2

GW を挟んで長く間があきました HTTP ヘッダの続きです。

  • コンテントネゴシエーション - クライアントからこういう内容でくれと要求する
    • Accept - メディアタイプを伝える
      • "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
      • q= の数値は qvalue といって優先順位を 0-1.0 の数値で指定する(デフォルト1.0)
      • 例だと text/html,application/xhtml+xml が 1.0, application/xml が 0.9, その他が 0.8
    • Accept-Charset - 文字エンコーディングを伝える
    • Accept-Language - 言語タグを伝える(ja, en など)
      • en-us(アメリカ英語)というタグもあるんですね。en は特に地域を指定しない英語
  • Content-Length - 転送するデータのbyte数を10進数で指定する
  • Transfer-Encoding: chunked - ヘッダにこれを指定するとサイズのわからないデータを少しずつ転送することができる
    • Transfer-Encoding の値として定義されているのは chunked だけ
    • 各チャンクの先頭には 16進数でそのチャンクの byte 数+改行が入る
    • 各チャンクは空行で区切られる
    • 終了を知らせるため最後には必ず 0 と空行が渡される