可以java applets(未签名)创建/读取cookie? [英] can java applets (not signed) create / read cookies?

查看:208
本文介绍了可以java applets(未签名)创建/读取cookie?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

解决方案

是的,你可以使用JSObject为此。
这里的小注释,你需要添加plugin.jar从jre / lib目录到你的路径,以获得这个编译。



阅读: / p>

  import netscape.javascript.JSObject; 

String data =;
String cookiename =fooCookie;
JSObject myBrowser = JSObject.getWindow(this);
JSObject myDocument =(JSObject)myBrowser.getMember(document);

String myCookie =(String)myDocument.getMember(cookie);
if(myCookie.length()> 0){
String [] cookies = myCookie.split(;);
for(String cookie:cookies){
int pos = cookie.indexOf(=);
if(cookie.substring(0,pos).trim()。equals(cookiename)){
data = cookie.substring(pos + 1);
break;
}
}
}

写作:

  String data =test; 
String cookiename =fooCookie;
JSObject win = JSObject.getWindow(this);
JSObject doc =(JSObject)win.getMember(document);
String data = cookiename +=+ data +; path = /; expires = Thu,31-Dec-2019 12:00:00 GMT;
doc.setMember(cookie,data);

不要忘记在Base64中对数据进行编码。


I was wondering if it's possible to write cookies to clients from unsigned applets.

解决方案

Yes they can, you can use JSObject for this. Small note here, you need to add the plugin.jar from the jre/lib directory to your path in order to get this compiled.

Reading:

import netscape.javascript.JSObject;

String data = "";
String cookiename = "fooCookie";
JSObject myBrowser = JSObject.getWindow(this);
JSObject myDocument = (JSObject) myBrowser.getMember("document");

String myCookie = (String) myDocument.getMember("cookie");
if (myCookie.length() > 0) {
    String[] cookies = myCookie.split(";");
    for (String cookie : cookies) {
        int pos = cookie.indexOf("=");
        if (cookie.substring(0, pos).trim().equals(cookiename)) {
            data = cookie.substring(pos + 1);
            break;
        }
    }
}

Writing:

String data = "test";
String cookiename = "fooCookie";
JSObject win = JSObject.getWindow(this);
JSObject doc = (JSObject) win.getMember("document");
String data = cookiename + "=" + data + "; path=/; expires=Thu, 31-Dec-2019 12:00:00 GMT";
doc.setMember("cookie", data);

Don't forget to encode your data in Base64.

这篇关于可以java applets(未签名)创建/读取cookie?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆