连接到受身份验证保护的远程 URL 时,可能会遇到 401 错误。以下是如何使用 Java 以编程方式处理身份验证。
原始代码:
URL url = new URL(String.format("http://%s/manager/list", _host + ":8080")); HttpURLConnection connection = (HttpURLConnection)url.openConnection();
解决方案:
而不是提供的代码,您可以使用以下方法:
URL url = new URL("location address"); URLConnection uc = url.openConnection(); String userpass = username + ":" + password; String basicAuth = "Basic " + new String(Base64.getEncoder().encode(userpass.getBytes())); uc.setRequestProperty ("Authorization", basicAuth); InputStream in = uc.getInputStream();
这种原生替代方法允许您直接通过 setRequestProperty 方法指定用户名和密码。授权标头使用基本身份验证方案进行设置,用户凭据使用 Base64 进行编码。
以上是如何在 Java 中验证远程 URL 连接并处理 401 错误?的详细内容。更多信息请关注PHP中文网其他相关文章!