1

我可以 通过浏览器轻松地在此站点中获得身份验证。但是没有可能的方式使用 Java 连接到它。我总是收到 401 错误。我尝试通过 Jsoup 和 HTMLUnit 进行连接,但仍然一无所获。任何人至少对为什么会发生这种情况有一些解释?

哦,顺便说一句...在尝试连接到页面而不进行身份验证时,我收到 401 错误。在我看来,这非常奇怪。

  1. 基本URLConnection = new URLConnection(URL);组合(本机 Java API)不起作用。
  2. JsoupDocument = Response.parse();没有用
  3. HTMLUnit 使用WebClient也不起作用
  4. 以上任何试图模拟浏览器的方法都不起作用
4

2 回答 2

1

401 错误是身份验证错误。这可能是因为您在连接时指定(或未指定)的代理被视为无效。(可能不止于此,具体取决于该站点的设置方式。)

您可以在 JSoup 中指定用户代理,请参阅SO 上该问题的答案。

于 2012-05-22T20:18:14.193 回答
1

如果您使用HttpURLConnection,也许它会有所帮助...

java.net.Authenticator.setDefault( new Authenticator() {
  protected java.net.PasswordAuthentication getPasswordAuthentication() {
    return new java.net.PasswordAuthentication ("user", "pass".toCharArray());
  }
});
于 2012-05-22T20:22:39.150 回答