gpt4 book ai didi

java - 我需要帮助使用 ProxySelector 来检测代理设置

转载 作者:可可西里 更新时间:2023-11-01 16:30:59 25 4
gpt4 key购买 nike

我已经创建了一个 Java Swing 应用程序。有些用户在激活应用程序、检查程序更新等时无法连接到互联网,因为他们使用了代理。

我一直在阅读有趣的 ProxySelector Class .非常好,但我有一些问题请问:

  1. 这个类会检测所有类型的可以使用的代理(HTTP、HTTPS、FTP、SOCK,...)吗?

  2. 如果使用的Proxy需要认证,这个类会自动获取它的信息吗?

  3. 我已经编写代码来获取使用的代理设置。现在我需要对此进行测试,但我没有代理,所以我打算按照说明设置代理 here ,但是有更快的方法吗?我可以使用公共(public)代理来测试吗 hidemyass.com ?

最佳答案

我不能回答你所有的问题,但这里有一些:

1.我相信它将使用 HTTP、HTTPS 和 SOCKS 的代理选择器。据我所知,JVM 本身不支持 FTP。

2.对于身份验证,您可以使用以下代码:

Authenticator.setDefault(new Authenticator() {
private URL previous;
int count = 0;
@Override
protected PasswordAuthentication getPasswordAuthentication() {
try {
if (previous == getRequestingURL())
count++;
if (previous != getRequestingURL()) {
count = 0;
} else {
if (count<3) {
// Ask for login/passwd to the user
} else {
// Throw a RuntimeException to prevent locking the account
throw new TooManyFailedAttemptException();
}

return new PasswordAuthentication("login", "password".toCharArray());
}
} finally {
previous = getRequestingURL();
}
}
});

3.我想任何公共(public)代理都可以。我不太确定您将如何确保您的代码实际使用它。我个人设置了一个并不难的 Squid 代理,您可以在那里真正跟踪您的调用。

关于java - 我需要帮助使用 ProxySelector 来检测代理设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9753837/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com