Class HttpRequestMessageExtensions
- Namespace
- Kampute.HttpClient
- Assembly
- Kampute.HttpClient.dll
Provides extension methods for HttpRequestMessage to enhance functionality related to HTTP request processing.
public static class HttpRequestMessageExtensions
- Inheritance
-
HttpRequestMessageExtensions
- Inherited Members
Methods
CanClone(HttpRequestMessage)
Determines whether the HttpRequestMessage can be cloned without issues.
public static bool CanClone(this HttpRequestMessage request)
Parameters
request
HttpRequestMessageThe HttpRequestMessage to check.
Returns
Remarks
This is a quick check to prevent cloning of requests that contain one-time-use content, which could lead to unexpected behaviors such as empty request bodies or InvalidOperationException.
Clone(HttpRequestMessage)
Clones the specified HttpRequestMessage, including its headers, version, and properties.
public static HttpRequestMessage Clone(this HttpRequestMessage request)
Parameters
request
HttpRequestMessageThe HttpRequestMessage to clone.
Returns
- HttpRequestMessage
A new instance of HttpRequestMessage that is a clone of the original.
Remarks
This method copies the provided HttpRequestMessage, including its headers, version, and properties. The method reuses the original request's HttpContent in the cloned request.
Exceptions
- InvalidOperationException
Thrown if the request contains a content that cannot be reused.
GetCloneGeneration(HttpRequestMessage)
Retrieves the number of times the original request was cloned to produce this HttpRequestMessage instance.
public static int GetCloneGeneration(this HttpRequestMessage request)
Parameters
request
HttpRequestMessageThe HttpRequestMessage to check.
Returns
- int
The clone generation count or zero if the request has not been cloned.
Remarks
The clone generation increases by 1 every time the request is cloned. An original request that has not been cloned will have a generation count of 0.
- See Also
IsCloned(HttpRequestMessage)
Checks if the HttpRequestMessage is a clone.
public static bool IsCloned(this HttpRequestMessage request)
Parameters
request
HttpRequestMessageThe HttpRequestMessage to check.
Returns
Remarks
A cloned request is one that has been created through the Clone(HttpRequestMessage) extension method.
- See Also