public void OnSocketSend(Func <byte[], CancellationToken, Task <HttpResponseMessage> > handler) { OnRequest(async(request, next, cancellationToken) => { if (ResponseUtils.IsSocketSendRequest(request)) { var data = await request.Content.ReadAsByteArrayAsync(); return(await handler(data, cancellationToken)); } else { return(await next()); } }); }