|
27 | 27 | import io.netty.handler.codec.http.HttpRequest;
|
28 | 28 | import io.netty.handler.codec.http.HttpResponse;
|
29 | 29 | import io.netty.handler.codec.http.LastHttpContent;
|
| 30 | +import io.netty.util.AsciiString; |
30 | 31 |
|
31 | 32 | import java.util.List;
|
32 | 33 | import java.util.Map;
|
@@ -172,7 +173,7 @@ protected void encode(ChannelHandlerContext ctx, HttpObject msg, List<Object> ou
|
172 | 173 | SpdyHeadersFrame spdyHeadersFrame = new DefaultSpdyHeadersFrame(currentStreamId);
|
173 | 174 | spdyHeadersFrame.setLast(true);
|
174 | 175 | for (Map.Entry<CharSequence, CharSequence> entry: trailers) {
|
175 |
| - spdyHeadersFrame.headers().add(entry.getKey(), entry.getValue()); |
| 176 | + spdyHeadersFrame.headers().add(AsciiString.of(entry.getKey()).toLowerCase(), entry.getValue()); |
176 | 177 | }
|
177 | 178 |
|
178 | 179 | // Write DATA frame and append HEADERS frame
|
@@ -233,7 +234,7 @@ private SpdySynStreamFrame createSynStreamFrame(HttpRequest httpRequest) throws
|
233 | 234 |
|
234 | 235 | // Transfer the remaining HTTP headers
|
235 | 236 | for (Map.Entry<CharSequence, CharSequence> entry: httpHeaders) {
|
236 |
| - frameHeaders.add(entry.getKey(), entry.getValue()); |
| 237 | + frameHeaders.add(AsciiString.of(entry.getKey()).toLowerCase(), entry.getValue()); |
237 | 238 | }
|
238 | 239 | currentStreamId = spdySynStreamFrame.streamId();
|
239 | 240 | if (associatedToStreamId == 0) {
|
@@ -272,7 +273,7 @@ private SpdyHeadersFrame createHeadersFrame(HttpResponse httpResponse) throws Ex
|
272 | 273 |
|
273 | 274 | // Transfer the remaining HTTP headers
|
274 | 275 | for (Map.Entry<CharSequence, CharSequence> entry: httpHeaders) {
|
275 |
| - spdyHeadersFrame.headers().add(entry.getKey(), entry.getValue()); |
| 276 | + spdyHeadersFrame.headers().add(AsciiString.of(entry.getKey()).toLowerCase(), entry.getValue()); |
276 | 277 | }
|
277 | 278 |
|
278 | 279 | currentStreamId = streamId;
|
|
0 commit comments