我正在尝试使用 java 设置 cookie,如图所示 here .
我想在javascript中使用这个cookie(由于一些限制只需要像这样使用它)。但我看不到任何 cookie 设置(因为我正在使用 web developer addon firefox )。
有办法做到这一点吗?这种 cookie 的使用可能吗?
Java代码:
try {
// instantiate CookieManager
CookieManager manager = new CookieManager();
CookieHandler.setDefault(manager);
CookieStore cookieJar = manager.getCookieStore();
// create cookie
HttpCookie cookie = new HttpCookie("UserName", str);
// add cookie to CookieStore for a
// particular URL
URL url = new URL("http://host.example.com");
cookieJar.add(url.toURI(), cookie);
System.out.println("Added cookie using cookie handler");
} catch(Exception e) {
System.out.println("Unable to set cookie using CookieHandler");
e.printStackTrace();
}
Javascript:
function Cookie(cname){
alert("in getcookie function");
var name = cname + "=";
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1);
if (c.indexOf(name) == 0)
document.getElementById("result").innerHTML=c.substring(name.length,c.length);
}
console.log(document.cookie);
//document.getElementById("result").innerHTML="somewhere something went wrong!";
}
</script>
<div id="result">
<p onclick="Cookie('JSESSIONID')">Click me</p>
</div>
console.log 没有显示任何输出。
最佳答案
你能试试这个吗:
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletResponse;
Cookie cookie = new Cookie("uniqueFileId" + uniqueFileId, uniqueFileId);
cookie.setMaxAge(60 * 10);
cookie.setPath("/");
cookie.setSecure(false);
response.addCookie(cookie);
关于javascript - 在Javascript中获取Java设置的cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31803345/