Class HttpWebClient
Used to communicate with the server over HTTP(S)
Inherited Members
Namespace: Titanium.Web.Proxy.Http
Assembly: Titanium.Web.Proxy.dll
Syntax
public class HttpWebClient
Properties
| Edit this page View SourceClientHttpVersion
HTTP version of the client-facing leg: what the client negotiated with the proxy.
Equals Request.HttpVersion except while a translation bridge has rewritten the request's
version for the origin wire (an HTTP/2 client bridged onto an HTTP/1.1 origin reports
2.0 here for the whole exchange). Use this, not Request.HttpVersion, to label or
branch on the client protocol. 0.0 when unknown.
Declaration
public Version ClientHttpVersion { get; }
Property Value
| Type | Description |
|---|---|
| Version |
ConnectRequest
Headers passed with Connect.
Declaration
public ConnectRequest? ConnectRequest { get; }
Property Value
| Type | Description |
|---|---|
| ConnectRequest |
IsHttps
Is Https?
Declaration
public bool IsHttps { get; }
Property Value
| Type | Description |
|---|---|
| bool |
OriginHttpVersion
HTTP version of the origin-facing leg: what the proxy actually spoke to the origin.
Equals Response.HttpVersion except where a bridge stamps the response with the client's
version for the client-side status line (an HTTP/1.1 client bridged onto an HTTP/2 or HTTP/3 origin
reports 2.0 or 3.0 here). Reading it never materializes a response. 0.0 when
no response has been received yet.
Declaration
public Version OriginHttpVersion { get; }
Property Value
| Type | Description |
|---|---|
| Version |
ProcessId
PID of the local client process for this session (Windows, Linux, and macOS). Remote clients, unsupported platforms, and unresolved sockets yield a non-positive value. See IsSupported.
Declaration
public Lazy<int> ProcessId { get; }
Property Value
| Type | Description |
|---|---|
| Lazy<int> |
Request
Web Request.
Declaration
public Request Request { get; }
Property Value
| Type | Description |
|---|---|
| Request |
Response
Web Response. Created on first access so H2/H3 MITM Lite request-only work does not allocate a Response + HeaderCollection graph per stream up front. CompareExchange: H2 request/response legs can race the first access.
Declaration
public Response Response { get; }
Property Value
| Type | Description |
|---|---|
| Response |
UpStreamEndPoint
Override UpStreamEndPoint for this request; Local NIC via request is made. Ignored for a destination whose address family does not match; prefer UpStreamEndPointIPv4 / UpStreamEndPointIPv6 for dual-stack.
Declaration
public IPEndPoint? UpStreamEndPoint { get; set; }
Property Value
| Type | Description |
|---|---|
| IPEndPoint |
UpStreamEndPointIPv4
Per-request local bind for IPv4 upstream destinations (overrides server
UpStreamEndPointIPv4).
Declaration
public IPEndPoint? UpStreamEndPointIPv4 { get; set; }
Property Value
| Type | Description |
|---|---|
| IPEndPoint |
UpStreamEndPointIPv6
Per-request local bind for IPv6 upstream destinations (overrides server
UpStreamEndPointIPv6).
Declaration
public IPEndPoint? UpStreamEndPointIPv6 { get; set; }
Property Value
| Type | Description |
|---|---|
| IPEndPoint |
UserData
Gets or sets the user data.
Declaration
public object? UserData { get; set; }
Property Value
| Type | Description |
|---|---|
| object |