在对java.net.URL的不同调用之间保持身份验证

在对java.net.URL的不同调用之间保持身份验证,java,url,jenkins,hudson,Java,Url,Jenkins,Hudson,我有一个使用基本身份验证HTTP的远程服务器,需要对不同URL进行多次调用。呼叫的一个示例: URL address = new URL ("hhtp://localhost:8080"); HttpURLConnection connection; // open connection connection = (HttpURLConnection) address.openConnection(); String encoding = DatatypeConverter.printBase6

我有一个使用基本身份验证HTTP的远程服务器,需要对不同URL进行多次调用。呼叫的一个示例:

URL address = new URL ("hhtp://localhost:8080");
HttpURLConnection connection;
// open connection
connection = (HttpURLConnection) address.openConnection();
String encoding = DatatypeConverter.printBase64Binary((username + ":" + password).getBytes());
connection.setRequestMethod("POST");
connection.setDoOutput(true);
connection.setRequestProperty("Authorization", "Basic " + encoding);
// transform result code into an exception
int code = connection.getResponseCode();
if ((code < 200) || (code >= 300))
{
       throw new HttpRetryException(connection.getResponseMessage(), code, address.toString());
}
 return connection;
问题是服务器需要花费大量时间来验证用户。在第一次调用之后,我们需要另一个页面,该页面具有指向同一服务器的不同URL。如何在不同通话之间保持通话

编辑:


澄清一下,我正在尝试连接到Jenkins服务器

服务器是否支持会话?它如何确定第二个请求属于同一会话?基本身份验证不一定涉及会话,您必须在每个请求中发送相同的授权头。是的,它是支持会话。使用web浏览器,您只需验证一次。如何获取此授权标头?与此问题无关,但我将与您一起解决此问题。