public async Task <HttpResponseMessage> Run(ExecutionContext context, HttpRequest request) { if (_testServerHttpClient == null) { throw new Exception("You must call Initialize(context,logger) first."); } var testServerHttpClient = _testServerHttpClient; var httpRequestMessageFeature = new HttpRequestMessageFeature(request); var httpRequestMessage = httpRequestMessageFeature.HttpRequestMessage; // var path = new PathString(request.Path.Value.ToLower()); var uriBuilder = new UriBuilder(request.Scheme, request.Host.Host) { Path = request.Path, Query = request.QueryString.Value }; if (request.Host.Port != null) { uriBuilder.Port = (int)request.Host.Port; } httpRequestMessage.RequestUri = uriBuilder.Uri; httpRequestMessage.Headers.Remove("Host"); httpRequestMessage.Headers.Add("x-InvocationId", context.InvocationId.ToString()); var responseMessage = await testServerHttpClient.HttpClient.SendAsync(httpRequestMessage); return(responseMessage); }
public async Task <HttpResponseMessage> Run(ExecutionContext context, HttpRequest request, ILogger logger) { var testServerHttpClient = FetchTestServerHttpClient(context, logger); var httpRequestMessageFeature = new HttpRequestMessageFeature(request); var httpRequestMessage = httpRequestMessageFeature.HttpRequestMessage; // var path = new PathString(request.Path.Value.ToLower()); var uriBuilder = new UriBuilder(request.Scheme, request.Host.Host) { Path = request.Path, Query = request.QueryString.Value }; if (request.Host.Port != null) { uriBuilder.Port = (int)request.Host.Port; } httpRequestMessage.RequestUri = uriBuilder.Uri; httpRequestMessage.Headers.Remove("Host"); var responseMessage = await testServerHttpClient.HttpClient.SendAsync(httpRequestMessage); return(responseMessage); }