Struct headers_accept_encoding::Upgrade
source · pub struct Upgrade(_);
Expand description
Upgrade
header, defined in RFC7230
The Upgrade
header field is intended to provide a simple mechanism
for transitioning from HTTP/1.1 to some other protocol on the same
connection. A client MAY send a list of protocols in the Upgrade
header field of a request to invite the server to switch to one or
more of those protocols, in order of descending preference, before
sending the final response. A server MAY ignore a received Upgrade
header field if it wishes to continue using the current protocol on
that connection. Upgrade cannot be used to insist on a protocol
change.
ABNF
Upgrade = 1#protocol
protocol = protocol-name ["/" protocol-version]
protocol-name = token
protocol-version = token
Example values
HTTP/2.0, SHTTP/1.3, IRC/6.9, RTA/x11
Note
In practice, the Upgrade
header is never that complicated. In most cases,
it is only ever a single value, such as "websocket"
.
Examples
use headers::Upgrade;
let ws = Upgrade::websocket();