ਇੱਕ ਨਾਮਿਤ HttpClient ਲਈ ਕੌਂਫਿਗਰ ਕੀਤਾ ਪ੍ਰੌਕਸੀ IHttpClientFactory ਵੱਲੋਂ ਵਾਪਸ ਕੀਤੇ ਹਰ ਕਲਾਇੰਟ ਨੂੰ ਆਪਣੇ ਆਪ ਕੌਂਫਿਗਰ ਨਹੀਂ ਕਰਦਾ। ਰਜਿਸਟਰੇਸ਼ਨ ਦਾ ਨਾਮ ਅਤੇ ਮੰਗਿਆ ਗਿਆ ਨਾਮ ਨਾਲ ਰੱਖੋ।

services.AddHttpClient("via-proxy")
    .ConfigurePrimaryHttpMessageHandler(() => new HttpClientHandler
    {
        Proxy = new WebProxy("http://203.0.113.10:8080"),
        UseProxy = true
    });

ਫਿਰ ਉਹ ਨਾਮਿਤ ਕੌਂਫਿਗਰੇਸ਼ਨ ਲਓ:

var client = factory.CreateClient("via-proxy");

ਉਹ ਐਂਡਪੌਇੰਟ ਸਿਰਫ਼ ਉਦਾਹਰਨ ਹੈ। ਮਨਜ਼ੂਰਸ਼ੁਦਾ ਜਨਤਕ ਸੇਵਾ ਬੇਨਤੀਆਂ ਲਈ, HTTP ਪ੍ਰੌਕਸੀ ਸੂਚੀ ਨਾਮਿਤ ਕਲਾਇੰਟ ਦੇ WebProxy URL ਲਈ ਉਮੀਦਵਾਰ ਪ੍ਰਦਾਨ ਕਰਦੀ ਹੈ। ਡਿਫ਼ਾਲਟ ਬਿਨਾਂ ਨਾਮ ਵਾਲਾ ਕਲਾਇੰਟ ਕਿਤੇ ਹੋਰ ਬਣਾਉਣਾ ਇੱਕ ਵੱਖਰੀ ਖੋਜ ਹੈ, ਭਾਵੇਂ ਦੋਵੇਂ ਕਲਾਇੰਟ ਇੱਕੋ ਇੰਜੈਕਟ ਕੀਤੀ ਫੈਕਟਰੀ ਤੋਂ ਆਉਣ।

ਪ੍ਰੌਕਸੀ ਵਿਵਹਾਰ ਨੂੰ ਮੰਜ਼ਿਲ ਬੇਨਤੀ ਹੈਡਰ ਵਜੋਂ ਨਾ ਸਮਝੋ, ਸਗੋਂ ਮੁੱਖ ਹੈਂਡਲਰ 'ਤੇ ਕਨੈਕਸ਼ਨ ਪੱਧਰ 'ਤੇ ਕੌਂਫਿਗਰ ਕਰੋ। ਫੈਕਟਰੀ ਆਪਣੇ ਵਾਪਸ ਕੀਤੇ HttpClient ਆਬਜੈਕਟਾਂ ਤੋਂ ਵੱਖਰੇ ਤੌਰ 'ਤੇ ਹੈਂਡਲਰਾਂ ਦੀ ਉਮਰ ਦਾ ਪ੍ਰਬੰਧ ਕਰ ਸਕਦੀ ਹੈ।

ਜੇ ਕਾਲ ਇੱਕ ਟਾਈਪਡ ਕਲਾਇੰਟ ਜਾਂ ਕਿਸੇ ਹੋਰ SDK ਦੀ ਹੈ, ਤਾਂ ਜਾਂਚੋ ਕਿ ਕਿਹੜਾ ਰਜਿਸਟਰੇਸ਼ਨ ਇਸਦਾ HttpClient ਦਿੰਦਾ ਹੈ। ਸਹੀ ਕੌਂਫਿਗਰ ਕੀਤਾ ਪਰ ਕਦੇ ਨਾ ਵਰਤਿਆ ਨਾਮਿਤ ਕਲਾਇੰਟ ਉਸ SDK ਦੇ ਨੈੱਟਵਰਕ ਰਸਤੇ ਨੂੰ ਪ੍ਰਭਾਵਿਤ ਨਹੀਂ ਕਰਦਾ।

ਸਥਿਰ ਰਾਊਟਿੰਗ ਨੀਤੀ ਲਈ ਇਹ ਕੌਂਫਿਗਰੇਸ਼ਨ ਵਰਤੋ। ਕਾਰਵਾਈਆਂ ਵਿਚਕਾਰ ਲਾਈਵ ਹੈਂਡਲਰ ਬਦਲਣਾ ਅਜੇ ਵੀ ਇੱਕ ਵੱਖਰੀ ਸਮਕਾਲੀਕਰਨ ਅਤੇ ਉਮਰ ਦੀ ਸਮੱਸਿਆ ਹੈ।

ਸੰਬੰਧਿਤ ਲੇਖ