Update Vary HeadersΒΆ
Append to a header string:
auto header = polycpp::vary::append("Accept", "Origin");
// header == "Accept, Origin"
Pass a comma-separated field string when that is what the caller already has:
auto header = polycpp::vary::append("", " Accept , Origin ");
// header == "Accept, Origin"
Use a field vector when fields are already structured:
auto header = polycpp::vary::append(
"Accept, Accept-Encoding",
polycpp::vary::FieldList{"origin", "accept", "accept-charset"});
// header == "Accept, Accept-Encoding, origin, accept-charset"
Mutate polycpp::http::Headers when adapting upstream vary(res, field)
code:
polycpp::http::Headers headers{{"Vary", "Accept"}};
polycpp::vary::vary(headers, "Origin");
// headers.get("Vary").value() == "Accept, Origin"
The adapter updates an existing Vary key case-insensitively and writes a
new Vary key when none exists. A response-like overload is also available
for polycpp::http::ServerResponse-style handles exposing getHeader,
getHeaderNames, and setHeader.