2013-05-03 107 views
0

我正在创建一个需要接收用户的Cookie进行认证的小程序。该小程序会收到所需的所有cookie和浏览。如果它没有找到它们,它会告诉用户进行身份验证。该小程序无法控制登录过程。如何发送更新的cookie到applet?

如果用户第一次打开小程序页面时已通过身份验证,则一切正常。

如果他不是,他必须在另一个页面进行身份验证,该页面将设置cookie,然后他必须刷新小程序页面。但是,即使刷新后,小程序也没有收到更新的cookie。当用户第一次打开页面时,它会一直收到它收到的相同内容。

要发送的cookie的小程序,我已经尝试使用:

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也试过完全相同的代码。

我有小程序打印getParameter("cookies")的值,它总是打印旧的值。但是,使用alert()或浏览器的开发控制台在document.cookie上进行显示时,会显示更新后的Cookie。

+0

与问题无关,但使用[部署工具包脚本](http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/deployment_advice.html#deplToolkit)编写小程序元件。 – 2013-05-03 13:34:05

回答

0

变成其中一个包含双引号的cookie。当用户已经通过身份验证时,该cookie是列表中的最后一个,因此它不会影响任何内容。当用户认证后,该cookie将位于列表的中间,关闭标签的引号并结束cookie字符串。