diff --git a/src/KubernetesClient/WebSocketBuilder.cs b/src/KubernetesClient/WebSocketBuilder.cs index 8acc3c5c..6aa4c0ea 100644 --- a/src/KubernetesClient/WebSocketBuilder.cs +++ b/src/KubernetesClient/WebSocketBuilder.cs @@ -1,3 +1,4 @@ +using System.Net; using System.Net.WebSockets; using System.Security.Cryptography.X509Certificates; @@ -16,6 +17,9 @@ public class WebSocketBuilder public WebSocketBuilder() { +#if NET5_0_OR_GREATER + Options.HttpVersion = HttpVersion.Version20; +#endif } public ClientWebSocketOptions Options => WebSocket.Options; diff --git a/tests/KubernetesClient.Tests/KubernetesExecTests.cs b/tests/KubernetesClient.Tests/KubernetesExecTests.cs index e0e0d593..6593f289 100644 --- a/tests/KubernetesClient.Tests/KubernetesExecTests.cs +++ b/tests/KubernetesClient.Tests/KubernetesExecTests.cs @@ -5,6 +5,7 @@ using k8s.Tests.Mock; using System; using System.Collections.Generic; +using System.Net; using System.Threading; using System.Threading.Tasks; using Xunit; @@ -13,6 +14,15 @@ namespace k8s.Tests { public class KubernetesExecTests { +#if NET5_0_OR_GREATER + [Fact] + public void WebSocketBuilderUsesHttp2ByDefault() + { + var builder = new WebSocketBuilder(); + Assert.Equal(HttpVersion.Version20, builder.Options.HttpVersion); + } +#endif + /// /// Tests the /// method. Changes the used by the client with a mock builder, so this test never hits the network.