mirror of
https://github.com/nsnail/Ocelot.git
synced 2025-06-19 11:58:15 +08:00
#263 map all content specific headers to downstream request content property, make sure we dont map them to request specific headers, added a gzip encoding acceptance test (#267)
This commit is contained in:
@ -47,11 +47,28 @@
|
||||
|
||||
var content = new ByteArrayContent(await ToByteArray(request.Body));
|
||||
|
||||
content.Headers.TryAddWithoutValidation("Content-Type", new[] {request.ContentType});
|
||||
content.Headers
|
||||
.TryAddWithoutValidation("Content-Type", new[] {request.ContentType});
|
||||
|
||||
AddHeaderIfExistsOnRequest("Content-Language", content, request);
|
||||
AddHeaderIfExistsOnRequest("Content-Location", content, request);
|
||||
AddHeaderIfExistsOnRequest("Content-Range", content, request);
|
||||
AddHeaderIfExistsOnRequest("Content-MD5", content, request);
|
||||
AddHeaderIfExistsOnRequest("Content-Disposition", content, request);
|
||||
AddHeaderIfExistsOnRequest("Content-Encoding", content, request);
|
||||
|
||||
return content;
|
||||
}
|
||||
|
||||
private void AddHeaderIfExistsOnRequest(string key, HttpContent content, HttpRequest request)
|
||||
{
|
||||
if(request.Headers.ContainsKey(key))
|
||||
{
|
||||
content.Headers
|
||||
.TryAddWithoutValidation(key, request.Headers[key].ToList());
|
||||
}
|
||||
}
|
||||
|
||||
private HttpMethod MapMethod(HttpRequest request)
|
||||
{
|
||||
return new HttpMethod(request.Method);
|
||||
|
Reference in New Issue
Block a user