要約
HTTP のためのユーティリティ関数を提供します。
目次
- モジュール関数
- 定数
モジュール関数
dequote(str) -> String
[permalink][rdoc][edit]-
与えられた文字列からダブルクオートとバックスラッシュを削除して返します。
- [PARAM] str:
- 文字列を指定します。
escape(str) -> String
[permalink][rdoc][edit]-
与えられた文字列を数値参照文字列に変換します。
以下の正規表現を使用して変換します。
control = (0x0..0x1f).collect{|c| c.chr }.join + "\x7f" space = " " delims = '<>#%"' unwise = '{}|\\^[]`' nonascii = (0x80..0xff).collect{|c| c.chr }.join /[#{Regexp.escape(control + space + delims + unwise + nonascii)}]/n
- [PARAM] str:
- 文字列を指定します。
escape8bit(str) -> String
[permalink][rdoc][edit]-
与えられた文字列を数値参照文字列に変換します。
- [PARAM] str:
- 文字列を指定します。
escape_path(str) -> String
[permalink][rdoc][edit]-
与えられた文字列を数値参照文字列に変換します。
以下の正規表現を使用して変換します。
num = '0123456789' lowalpha = 'abcdefghijklmnopqrstuvwxyz' upalpha = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' mark = '-_.!~*\'()' unreserved = num + lowalpha + upalpha + mark /[^#{Regexp.escape(unreserved + ":@&=+$,")}]/n
- [PARAM] str:
- 文字列を指定します。
load_mime_types(file) -> Hash
[permalink][rdoc][edit]-
Apache の mime.types ファイル形式の file を読み込み拡張子をキー、MIME タイプを値とするハッシュを返します。キーも値も文字列です。
- [PARAM] file:
- Apache の mime.types ファイル形式のファイルの名前を文字列で指定します。
require 'webrick' p WEBrick::HTTPUtils.load_mime_types('/etc/mime.types') # => {"htm"=>"text/html", "rpm"=>"application/x-rpm", ... }
mime_type(filename, mime_tab) -> String
[permalink][rdoc][edit]-
ファイル名 filename の拡張子をもとにその MIME タイプを指定された mime_tab から探して文字列として返します。MIME タイプが見つからない場合は "application/octet-stream" を返します。
- [PARAM] filename:
- ファイル名を文字列で指定します。
- [PARAM] mime_tab:
- 拡張子をキー、MIME タイプを値とするハッシュを指定します。
require 'webrick' include WEBrick::HTTPUtils p mime_type('index.html', DefaultMimeTypes) #=> "text/html" p mime_type('index.html.ja', DefaultMimeTypes) #=> "text/html" p mime_type('index.hoge', DefaultMimeTypes) #=> "application/octet-stream"
parse_header(raw) -> Hash
[permalink][rdoc][edit]-
HTTP ヘッダをパースして結果をハッシュに格納して返します。
- [PARAM] raw:
- 生のヘッダを表す文字列を指定します。
parse_range_header(ranges_specifier)
[permalink][rdoc][edit]-
[TODO] ???
- [PARAM] ranges_specifier:
quote(str) -> String
[permalink][rdoc][edit]-
与えられた文字列をダブルクオートでクオートします。
与えられた文字列に含まれているダブルクオートはバックスラッシュでエスケープします。
- [PARAM] str:
- 文字列を指定します。
split_header_value(str) -> Array
[permalink][rdoc][edit]-
HTTP ヘッダの値を分割して返します。
- [PARAM] str:
- HTTP ヘッダの値を返します。
unescape(str) -> String
[permalink][rdoc][edit]-
与えられた文字列を数値参照文字列から元の文字列に変換します。
- [PARAM] str:
- 文字列を指定します。
定数
DefaultMimeTypes -> Hash
[permalink][rdoc][edit]-
ファイルの拡張子をキー、 MIME Type を値とする要素を持つハッシュです。