You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

设置SOCKS5代理后DotNetBrowser无法访问,求正确配置方法

DotNetBrowser SOCKS5代理配置问题解答

是否支持SOCKS5?

DotNetBrowser完全支持SOCKS5代理,包括需要用户名密码认证的场景。

现有配置的问题

你贴的代码只设置了代理认证逻辑,但没指定SOCKS5代理的服务器地址和端口——这是配置未生效、出现ERR_CONNECTION_RESET的核心原因。另外代码里的用户名拼写错误(usernamne多了一个字母n),也可能引发认证失败。

正确的配置方式

需要分两步完成:先指定代理服务器的地址和端口,再配置认证逻辑(如果代理需要认证)。

完整示例代码

// 初始化引擎配置
EngineOptions engineOptions = new EngineOptions.Builder()
    .Build();

using (IEngine engine = EngineFactory.Create(engineOptions))
{
    // 获取默认配置文件
    IProfile profile = engine.Profiles.Default;

    // 1. 设置SOCKS5代理服务器核心参数
    profile.Network.ProxySettings = new ProxySettings
    {
        Type = ProxyType.Socks5,
        Host = "你的SOCKS5代理IP",
        Port = 你的代理端口号, // 比如常用的1080
        // 代理不需要认证的话,下面两行可以删掉
        Username = "正确的用户名",
        Password = "正确的密码"
    };

    // 2. 配置动态认证处理器(可选,若代理需要实时认证时用)
    profile.Network.AuthenticateHandler = new Handler<AuthenticateParameters, AuthenticateResponse>(p =>
    {
        if (p.IsProxy)
        {
            return AuthenticateResponse.Continue("正确的用户名", "正确的密码");
        }
        return AuthenticateResponse.Cancel();
    });

    // 创建浏览器实例测试访问
    using (IBrowser browser = engine.CreateBrowser())
    {
        browser.Navigation.LoadUrl("https://目标网址").Wait();
    }
}

额外注意事项

  • 先确认SOCKS5代理服务器本身能正常连接,别是代理端故障导致的ERR_CONNECTION_RESET
  • 核对用户名、密码的拼写,错一个字符都会导致认证失败
  • 如果代理不需要认证,只需要设置Type、Host和Port这三个参数就行,不用管认证相关的代码

内容的提问来源于stack exchange,提问作者regina

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 12:37:06