| 98 | } |
| 99 | |
| 100 | void HttpHeader::AppendHeader(const std::string& key, |
| 101 | const butil::StringPiece& value) { |
| 102 | if (!CanFoldedInLine(key)) { |
| 103 | // Add a new Set-Cookie header field. |
| 104 | std::string& slot = AddHeader(key); |
| 105 | slot.assign(value.data(), value.size()); |
| 106 | } else { |
| 107 | std::string& slot = GetOrAddHeader(key); |
| 108 | if (slot.empty()) { |
| 109 | slot.assign(value.data(), value.size()); |
| 110 | } else { |
| 111 | slot.reserve(slot.size() + 1 + value.size()); |
| 112 | slot.append(HeaderValueDelimiter(key)); |
| 113 | slot.append(value.data(), value.size()); |
| 114 | } |
| 115 | } |
| 116 | } |
| 117 | |
| 118 | const char* HttpHeader::reason_phrase() const { |
| 119 | return HttpReasonPhrase(_status_code); |