我正在创建一个需要接收用户cookie进行身份验证的applet。 applet接收所需的所有cookie和浏览。如果找不到它们,它会告诉用户进行身份验证。小程序无法控制登录过程。
如果用户第一次打开applet页面时已经过身份验证,那么一切都很好。
如果他不是,他必须在另一个页面进行身份验证,这将设置cookie,然后他必须刷新applet页面。但是,即使刷新后,小程序也不会收到更新的cookie。它一直收到用户第一次打开页面时收到的相同内容。
要将Cookie发送到applet,我尝试使用:
document.write('<object id="myApplet" classid="java:MyApplet.class"
type="application/x-java-applet"
archive="myApplet.jar"
height="300"
width="500">');
document.write('<param name="cookies" value="' + document.cookie + '" />');
document.write('</object>');
我也尝试使用innerHTML完全相同的代码。
我让applet打印getParameter("cookies")
的值,它始终打印旧值。但是,使用document.cookie
或浏览器的开发控制台在alert()
上进行显示,它会显示更新的Cookie。
答案 0 :(得分:0)
原来其中一个包含双引号的Cookie。当用户已经过身份验证时,该cookie是列表中的最后一个,因此它不会影响任何内容。当用户之后进行身份验证时,该cookie将位于列表的中间,关闭标记的引号并结束cookie字符串。