我假设可见字符的范围在十六进制0x21到0x7E之间。如果这个假设是正确的,那么空格(0x20)不会被包括在内,水平制表符(0x09)也不会被包括在内,DEL(0x7F)也不会被包括在内。RFC7230中以下定义支持了这一假设: field-value = *( field-content / obs-fold ) obs-fold = CRLF 1*( SP / HTAB ) field-content = field-vchar [ 1*( SP / HTAB ) field-vchar ] field-vchar = VCHAR / obs-text obs-text = %x80-FF 这里会分别考虑空格字符,因此VCHAR不需要包括空格和水平制表符。
VCHAR
的定义是从RFC 5234附录B.1引用的,该附录将VCHAR
定义为VCHAR = %x21-7E ; 可见(可打印)字符
。 - Remy Lebeau