![show/hide quicksearch [+]](../images/find.png)
Mixin for holding meta-information.
returns a charset parameter in Content-Type field. It is downcased for canonicalization.
If charset parameter is not given but a block is given, the block is called and its result is returned. It can be used to guess charset.
If charset parameter and block is not given, nil is returned except text type. In that case, “utf-8” is returned as defined by RFC6838 4.2.1
 
               # File ruby-3.1.2/lib/open-uri.rb, line 534
def charset
  type, *parameters = content_type_parse
  if pair = parameters.assoc('charset')
    pair.last.downcase
  elsif block_given?
    yield
  elsif type && %r{\Atext/} =~ type
    "utf-8" # RFC6838 4.2.1
  else
    nil
  end
end
             
            Returns a list of encodings in Content-Encoding field as an array of strings.
The encodings are downcased for canonicalization.
 
               # File ruby-3.1.2/lib/open-uri.rb, line 551
def content_encoding
  vs = @metas['content-encoding']
  if vs && %r{\A#{RE_LWS}?#{RE_TOKEN}#{RE_LWS}?(?:,#{RE_LWS}?#{RE_TOKEN}#{RE_LWS}?)*}o =~ (v = vs.join(', '))
    v.scan(RE_TOKEN).map {|content_coding| content_coding.downcase}
  else
    []
  end
end
             
            returns “type/subtype” which is MIME Content-Type. It is downcased for canonicalization. Content-Type parameters are stripped.
 
               # File ruby-3.1.2/lib/open-uri.rb, line 519
def content_type
  type, *_ = content_type_parse
  type || 'application/octet-stream'
end
             
            returns a Time that represents the Last-Modified field.
 
               # File ruby-3.1.2/lib/open-uri.rb, line 481
def last_modified
  if vs = @metas['last-modified']
    v = vs.join(', ')
    Time.httpdate(v)
  else
    nil
  end
end