HTTP 1.0と1.1の違い


rubyでhttpに直接アクセス
rubyでhttpを使うときには通常http.rbを使う。open-uriなんかも便利なようだ。しかし、headerの処理などの細かい部分が気に入らない場合がある。そのような場合には、httpを直接たたいた方が簡単である。 HTTP1.0の場合には、

GET /file HTTP/1.0

を送って、ソケットから全部readすれば良いので簡単であるが、HTTP1.1の場合には、keep-aliveするので、content-lengthの部分を見て、必要なサイズを読み込まなければならないので、処理が少し煩雑になる。 とりあえずは簡単なpageにはアクセスできるようにはなったが、HTTPのすべてを組み込むのは大変なので、徐々に機能を増やしていこう。一時期rubyでブラウザを書くのがはやっていたが、難しそうだな。