9a398127cb
HTTP::Cookie is a ruby library to handle HTTP cookies in a way both compliant with RFCs and compatible with today's major browsers. It was originally a part of the [Mechanize](https://github.com/sparklemotion/mechanize) library, separated as an independent library in the hope of serving as a common component that is reusable from any HTTP related piece of software. The following is an incomplete list of its features: * Its behavior is highly compatible with that of today's major web browsers. * It is based on and conforms to RFC 6265 (the latest standard for the HTTP cookie mechanism) to a high extent, with real world conventions deeply in mind. * It takes eTLD (effective TLD, also known as "Public Suffix") into account just as major browsers do, to reject cookies with an eTLD domain like "org", "co.jp", or "appspot.com". This feature is brought to you by the domain_name gem. * The number of cookies and the size are properly capped so that a cookie store does not get flooded. * It supports the legacy Netscape cookies.txt format for serialization, maximizing the interoperability with other implementations. * It supports the cookies.sqlite format adopted by Mozilla Firefox for backend store database which can be shared among multiple program instances. * It is relatively easy to add a new serialization format or a backend store because of its modular API.
35 lines
1.4 KiB
Text
35 lines
1.4 KiB
Text
HTTP::Cookie is a ruby library to handle HTTP cookies in a way both
|
|
compliant with RFCs and compatible with today's major browsers.
|
|
|
|
It was originally a part of the
|
|
[Mechanize](https://github.com/sparklemotion/mechanize) library,
|
|
separated as an independent library in the hope of serving as a common
|
|
component that is reusable from any HTTP related piece of software.
|
|
|
|
The following is an incomplete list of its features:
|
|
|
|
* Its behavior is highly compatible with that of today's major web
|
|
browsers.
|
|
|
|
* It is based on and conforms to RFC 6265 (the latest standard for the
|
|
HTTP cookie mechanism) to a high extent, with real world conventions
|
|
deeply in mind.
|
|
|
|
* It takes eTLD (effective TLD, also known as "Public Suffix") into
|
|
account just as major browsers do, to reject cookies with an eTLD
|
|
domain like "org", "co.jp", or "appspot.com". This feature is
|
|
brought to you by the domain_name gem.
|
|
|
|
* The number of cookies and the size are properly capped so that a
|
|
cookie store does not get flooded.
|
|
|
|
* It supports the legacy Netscape cookies.txt format for
|
|
serialization, maximizing the interoperability with other
|
|
implementations.
|
|
|
|
* It supports the cookies.sqlite format adopted by Mozilla Firefox for
|
|
backend store database which can be shared among multiple program
|
|
instances.
|
|
|
|
* It is relatively easy to add a new serialization format or a backend
|
|
store because of its modular API.
|