1234567891011121314151617181920212223242526272829 |
- #if !UNITY_WEBGL || UNITY_EDITOR
- using System;
- using Best.HTTP.Proxies.Implementations;
- using Best.HTTP.Request.Authentication;
- using Best.HTTP.Shared.Extensions;
- namespace Best.HTTP.Proxies
- {
- /// <summary>
- /// Represents a SOCKS proxy used for making HTTP requests, supporting SOCKS version 5 (v5).
- /// </summary>
- public sealed class SOCKSProxy : Proxy
- {
- /// <summary>
- /// Initializes a new instance of the SOCKSProxy class with the specified proxy address and credentials.
- /// </summary>
- /// <param name="address">The address of the SOCKS proxy server.</param>
- /// <param name="credentials">The credentials for proxy authentication (if required).</param>
- public SOCKSProxy(Uri address, Credentials credentials)
- : base(address, credentials)
- { }
- public override string GetRequestPath(Uri uri) => uri.GetRequestPathAndQueryURL();
- internal override bool SetupRequest(HTTPRequest request) => false;
- internal override void BeginConnect(ProxyConnectParameters parameters) => new SOCKSV5Negotiator(this, parameters);
- }
- }
- #endif
|