タグ

2011年4月20日のブックマーク (3件)

  • Why HTTP Streaming?

    Rails 3.1 is going to support HTTP streaming, aka chunked responses, this post explains what’s all about. What Is HTTP Streaming? Ordinary dynamic HTTP responses need a Content-Length header. Their timeline look like this: Those are three serial steps because normally you need to generate the content in order to be able to know its size, and thus fill the Content-Length header of the response. HTT

    Why HTTP Streaming?
  • Rails 3.1 でサポートされるHTTPストリーミング機能について - おもしろwebサービス開発日記

    Riding Rails: Why HTTP Streaming?の意訳です。Rails 3.1 からHTTPストリーミングがサポートされるようになるらしい。 HTTPストリーミングって何? 普通の動的なHTTPレスポンスにはContent-Lengthヘッダが必要。時系列的にはこんな感じ HTTPリクエスト 動的なコンテンツの生成 HTTPレスポンス これらは三つの連続したステップとなる。普通はコンテンツを生成するとそのサイズを知ることが可能になり、レスポンスヘッダにContent-Lengthを付け加える。 HTTPは上記のやり方の代わりにchunked transfer encodingと呼ばれるストリーミング的なやりかたも提供している。 ストリーミングなレスポンスにはContnt-Lengthヘッダはない。その代わりにTransfer-Encodingヘッダが"chunked"とい

    Rails 3.1 でサポートされるHTTPストリーミング機能について - おもしろwebサービス開発日記
    rochefort
    rochefort 2011/04/20
    最近のブラウザは古いブラウザがしていたようにjsファイルを読み込み中にブロックしたりしない。静的ファイルをリクエストするためにドキュメントを先読みするスキャナ機能を実装したりもしてる。例:webkit の preload sca
  • rubyでurlのencode - rochefort's blog

    URI.encodeだっけCGI.escapeだっけ、そういえばuってaliasなかったけとなったので ソース見てみました。 結論 こちらで議論されているように、CGI.escapeとERB::Util.uでは挙動が異なります。 ruby -r cgi -r erb -e 'puts CGI.escape("a b"), ERB::Util.u("a b")' $ ruby -r cgi -r erb -e 'puts CGI.escape("a b"), ERB::Util.u("a b")' a+b a%20b 基は、ERB::Util.uでいいのかな。(Railsのviewで使うならuでok) CGI.escapeの方が早いらしいのでこの差を意識しない場合のみCGI.escapeでしょうか。 ソース抜粋 URI.encode 使っちゃダメです。 obsoleteでした。 #1.9.

    rubyでurlのencode - rochefort's blog