2 回答

TA貢獻(xiàn)1963條經(jīng)驗(yàn) 獲得超6個(gè)贊
不幸的是,.NET Core 本身不支持 SOCKS 代理,無(wú)論是 4 還是 5,它只支持HTTP 代理。
然而,有一個(gè)開源庫(kù)可以為您的應(yīng)用程序添加 SOCKS5 代理支持。試試這個(gè):https ://github.com/MihaZupan/HttpToSocks5Proxy
結(jié)合以上兩種方法,您的應(yīng)用程序應(yīng)該能夠通過 SOCKS5 代理訪問 Internet 資源。

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超13個(gè)贊
現(xiàn)在 .NET 6 支持 SOCKS 代理(在這里回答):
var proxy = new WebProxy
{
Address = new Uri("socks5://localhost:8080")
};
//proxy.Credentials = new NetworkCredential(); //Used to set Proxy logins.
var handler = new HttpClientHandler
{
Proxy = proxy
};
var httpClient = new HttpClient(handler);
或者當(dāng)你可以注入 IHttpClientFactory 并想HttpClient使用它創(chuàng)建實(shí)例時(shí):
Services.AddHttpClient("WithProxy")
.ConfigurePrimaryHttpMessageHandler(() =>
{
var proxy = new WebProxy
{
Address = new Uri("socks5://localhost:8080")
};
return new HttpClientHandler
{
Proxy = proxy
};
});
當(dāng)你注入IHttpClientFactory對(duì)象時(shí):
httpClient = httpClientFactory.CreateClient("WithProxy");
- 2 回答
- 0 關(guān)注
- 186 瀏覽
添加回答
舉報(bào)