THRIFT-5431 Response should include 'content-type' header
Client: netstd
Patch: Jens Geyer
This closes #2409
diff --git a/lib/netstd/Thrift/Transport/Server/THttpServerTransport.cs b/lib/netstd/Thrift/Transport/Server/THttpServerTransport.cs
index a013a9a..05efba2 100644
--- a/lib/netstd/Thrift/Transport/Server/THttpServerTransport.cs
+++ b/lib/netstd/Thrift/Transport/Server/THttpServerTransport.cs
@@ -87,22 +87,23 @@
InputTransportFactory = inputTransFactory;
OutputTransportFactory = outputTransFactory;
+ // never used
+ _ = next;
+ _ = loggerFactory;
/* never used
_next = next;
_logger = (loggerFactory != null) ? loggerFactory.CreateLogger<THttpServerTransport>() : new NullLogger<THttpServerTransport>();
*/
- }
+ }
- public async Task Invoke(HttpContext context)
+ public async Task Invoke(HttpContext context)
{
- context.Response.ContentType = ContentType;
await ProcessRequestAsync(context, context.RequestAborted); //TODO: check for correct logic
}
public async Task ProcessRequestAsync(HttpContext context, CancellationToken cancellationToken)
{
var transport = new TStreamTransport(context.Request.Body, context.Response.Body, Configuration);
-
try
{
var intrans = (InputTransportFactory != null) ? InputTransportFactory.GetTransport(transport) : transport;
@@ -111,6 +112,7 @@
var input = InputProtocolFactory.GetProtocol(intrans);
var output = OutputProtocolFactory.GetProtocol(outtrans);
+ context.Response.ContentType = ContentType;
while (await Processor.ProcessAsync(input, output, cancellationToken))
{
if (!context.Response.HasStarted) // oneway method called