In net 4.5 we are working with proxy like this:
<system.net>
<!-- -->
<defaultProxy enabled="true" useDefaultCredentials="false">
<proxy usesystemdefault="True" proxyaddress="http://192.168.1.1:8888" bypassonlocal="True" autoDetect="False" />
<module type="CommonLibrary.Proxy.MyProxy, CommonLibrary, Version=1.0.0.0, Culture=neutral" />
</defaultProxy>
<settings>
<httpWebRequest useUnsafeHeaderParsing="true" />
<servicePointManager expect100Continue="false" />
</settings>
</system.net>
but in asp.net core or test we can't found a solution like the above Could someone please help me?
I really appreciate your help
Thanks, Regards
Whilst manually setting the proxy works when it's possible to use a HttpClientHander
, defaulting all requests to do so without code, like you could do in the .NET Framework is currently not possible. Which is bummer if you're using a library that doesn't expose this functionality.
Thankfully, from .NET Core 3.0, this will be possible simply by setting environment variables (i.e. behaves exactly as Linux has worked forever): https://github.com/dotnet/corefx/issues/37187
Alternatively, https://github.com/dotnet/corefx/issues/36553 added a new static DefaultWebProxy
property on HttpClient
that will allow you to accomplish the same thing via code. This will also be available in Core 3.0.