def split_header_value(str)
      return [] if str.nil?
      str = str.dup.strip
      binary_encode(str)
      str.scan(%r'\G((?:"(?:\\.|[^"])+?"|[^",]+)+)
                    (?:,\s*|\Z)'xn).flatten
    end
def split_header_value(str)
      return [] if str.nil?
      str = str.dup.strip
      binary_encode(str)
      str.scan(%r'\G((?:"(?:\\.|[^"])+?"|[^",]+)+)
                    (?:,\s*|\Z)'xn).flatten
    end
Splits a header value +str+ according to HTTP specification.