private Headers copyHeaders(HttpServerRequest httpServerRequest) { Headers headers = new Headers(); for (Map.Entry<String, String> entry : httpServerRequest.getHeaders().entries()) { headers.add(entry.getKey(), entry.getValue()); } return headers; }
while (values.hasMoreElements()) { String value = (String) values.nextElement(); reqHeaders.add(name, value);
public static HttpResponseMessage clientResponseToZuulResponse(HttpRequestMessage zuulRequest, HttpClientResponse<ByteBuf> resp) { HttpResponseMessage zuulResp = new HttpResponseMessage(zuulRequest.getContext(), zuulRequest, 500); // Copy the response headers and info into the RequestContext for use by post filters. if (resp.getStatus() != null) { zuulResp.setStatus(resp.getStatus().code()); } Headers zuulRespHeaders = zuulResp.getHeaders(); for (Map.Entry<String, String> entry : resp.getHeaders().entries()) { // TODO - should we be filtering headers here like we do when using Ribbon? zuulRespHeaders.add(entry.getKey(), entry.getValue()); } return zuulResp; }
protected HttpResponseMessage createHttpResponseMessage(HttpResponse ribbonResp, HttpRequestMessage request) { // Convert to a zuul response object. HttpResponseMessage respMsg = new HttpResponseMessage(request.getContext(), request, 500); respMsg.setStatus(ribbonResp.getStatus()); for (Map.Entry<String, String> header : ribbonResp.getHttpHeaders().getAllHeaders()) { if (ProxyUtils.isValidResponseHeader(header.getKey())) { respMsg.getHeaders().add(header.getKey(), header.getValue()); } } // Body. Observable<ByteBuf> responseBodyObs = ByteBufUtils.fromInputStream(ribbonResp.getInputStream()); respMsg.setBodyStream(responseBodyObs); return respMsg; }