【问题标题】:Using different proxy for each GeckoFx Instances为每个 GeckoFx 实例使用不同的代理
【发布时间】:2014-11-11 07:42:42
【问题描述】:

我正在使用 Geckfx18.0 和 xulrunner18.01。由于 Geckofx 与其他实例共享 cookie 和用户首选项,所以我尝试创建一个新的配置文件目录以使它们具有独特的设置,但这似乎没有用。这是我的代码。我的代码有问题吗?

String profileDir = port.ToString();
string directory = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), Path.Combine("Geckofx", profileDir));
this.Text = directory.ToString();

if (!Directory.Exists(directory))
    Directory.CreateDirectory(directory);

Gecko.Xpcom.ProfileDirectory = directory;
GeckoPreferences.User["network.proxy.type"] = 1;
GeckoPreferences.User["network.proxy.socks"] = "127.0.0.1";
GeckoPreferences.User["network.proxy.socks_port"] = port;
GeckoPreferences.User["network.proxy.socks_version"] = 5;
GeckoPreferences.User["general.useragent.override"] = ua;

【问题讨论】:

    标签: c# gecko geckofx


    【解决方案1】:

    在设置ProfileDirectory 之前,您是否正在初始化 Gecko 的实例?

    请注意XpCom.ProfileDirectory 是static property,因此如果您尝试启动每个实例,请记住您可能会撤消之前设置的路径。

    此外,您无需在代码中设置首选项,而是通过GeckoPreferences.Save() 将用户首选项保存到文件中。然后您可以通过GeckoPreferences.Load() 重新加载它们以支持不同的用户。

    【讨论】:

    • 我不是。我有 4 个标准的壁虎浏览器,并不断尝试为每个浏览器设置不同的代理。我需要在使用之前重新创建每个浏览器吗?对不起,我不能在这里分享任何代码,因为它不是我的线程。我刚刚找到它并添加了赏金,因为我有同样的问题
    • @user2530266 您应该创建一个包含相关详细信息的新问题并参考此赏金,这样您就可以陈述您的具体问题。
    • @Nkosi 没有理由。我有完全一样的问题。循环中的相同代码...
    • @user2530266 好的。这只是一个建议,以防您想添加比 cmets 线程更容易注意到的更多细节。
    猜你喜欢
    • 2013-12-11
    • 1970-01-01
    • 1970-01-01
    • 2022-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多