おさかな日誌

魚類がプログラミング

HTTP header value の構成文字セットとは

Authorization header value に filter 処理を当てる時にどんな入力が来るのか知りたかったので調べた。

rfc2616 の sec2.2 に仕様があって

field value  = token
token        = 1*<any CHAR except CTLs or separators>
CHAR         = <any US-ASCII character (octets 0 - 127)>
CTL          = <any US-ASCII control character
               (octets 0 - 31) and DEL (127)>
separators   = "(" | ")" | "<" | ">" | "@"
               | "," | ";" | ":" | "\" | <">
               | "/" | "[" | "]" | "?" | "="
               | "{" | "}" | SP | HT
SP           = <US-ASCII SP, space (32)>
HT           = <US-ASCII HT, horizontal-tab (9)>

こんな感じ。予想してたよりも自由度高かった。