in src/Diagnostics.HealthChecks/Internal/HttpEndpointHealthCheck.cs [70:100]
private static HttpRequestMessage CloneRequestMessage(HttpRequestMessage message)
{
HttpRequestMessage clone = new()
{
Method = message.Method,
RequestUri = message.RequestUri,
Content = message.Content,
Version = message.Version
};
foreach (KeyValuePair<string, IEnumerable<string>> header in message.Headers)
{
clone.Headers.TryAddWithoutValidation(header.Key, header.Value);
}
#if !NETCOREAPP3_1 && !NETSTANDARD2_0
clone.VersionPolicy = message.VersionPolicy;
foreach (KeyValuePair<string, object?> option in message.Options)
{
clone.Options.Set(new HttpRequestOptionsKey<object?>(option.Key), option.Value);
}
#else
foreach (KeyValuePair<string, object> prop in message.Properties)
{
clone.Properties.Add(prop.Key, prop.Value);
}
#endif
return clone;
}