我正在尝试通过Java在我创建的Google Web应用程序项目中访问Web服务。
代码应该命中端点URL并通过用户名/密码对用户进行身份验证,并获取服务器在cookie中提供的jsessionID。身份验证工作正常,但我无法从cookie中提取JsessionID。
以下是我正在使用的代码: -
private static String getCookieFromHeaders(HttpURLConnection wsConnection) {
String headerName;
String headerValue = "FAIL";
for (int i = 0;; i++) {
headerName = wsConnection.getHeaderFieldKey(i);
if (headerName != null && headerName.equals("Set-Cookie")) {
headerValue = wsConnection.getHeaderField(i);
break;
}
}
// return the header value (FAIL string for not found)
return headerValue;
}
变量headerName只是在无限循环中给出“null”。
请告知,这里有一个完整的Java noob。
答案 0 :(得分:0)
为什么不使用HttpServletRequest.getCookies()?
答案 1 :(得分:0)
实际上正在接收cookie,标题是“set-cookie”而不是“Set-Cookie”。 由于愚蠢的无限循环而无法发现它!