public Method

Cookie.parse(str, url)

There's no documentation for this item.

Source Code

# File httpclient/cookie.rb, line 159
def parse(str, url)
  @url = url
  cookie_elem = str.split(/;/)
  cookie_elem = join_quotedstr(cookie_elem, ';')
  first_elem = cookie_elem.shift
  if first_elem !~ /([^=]*)(\=(.*))?/
    return
    ## raise ArgumentError 'invalid cookie value'
  end
  @name = $1.strip
  @value = $3
  if @value
    if @value =~ /^\s*"(.*)"\s*$/
      @value = $1
    else
      @value.dup.strip!
    end
  end
  cookie_elem.each{|pair|
    key, value = pair.split(/=/)  ## value may nil
    key.strip!
    if value
      value = value.strip.sub(/\A"(.*)"\z/) { $1 }
    end
    case key.downcase
    when 'domain'
      @domain = value
    when 'expires'
      begin
        @expires = Time.gm(*parsedate(value)[0,6])
      rescue ArgumentError
        @expires = nil
      end
    when 'path'
      @path = value
    when 'secure'
      @secure = true  ## value may nil, but must 'true'.
    else
      ## ignore
    end
  }
end
Comments

Have your say
Please use Textile formatting (click here for a cheat sheet). Use <code/> and <pre/> for code samples.
Click here to login with OpenID to to post comments.