2
回答
JFinal获取action和参数问题

@JFinal 你好,想跟你请教个问题:

// --------
int i = url.lastIndexOf(SLASH);
if (i != -1) {
    action = mapping.get(url.substring(0, i));
    urlPara[0] = url.substring(i + 1);
}



这段代码获取action和参数有问题吧。

如果URI是/admin/login;JSESSIONID=30278de7-dcef-4874-ab78-5554594ceadb

获取到的action是index

参数是login;JSESSIONID=30278de7-dcef-4874-ab78-5554594ceadb

关于JSESSIONID的说明:http://sxsoft.blog.163.com/blog/static/190412229200911103116773

举报
aduan
发帖于2年前 2回/505阅
共有2个答案 最后回答: 2年前

   这种将 JESSIONID 放 url 中的用法,添加一个 Handler 即可,大致代码如下:

JSessionIdHandler extends Handler {
 public void handle(target, req, res, isHandled) {
   int index = target.indexOf("JESSIONID");
   if (index != -1)
     target = target.substring(0, index);
   next.handle(target, req, res, isHandled);
 }
}
   最后在 configHandler 中添加一下:
YourJFinalConfig extends JFinalConfig {
 public void configHandler(Handlers me) {
  me.add(new JSessionIdHandler());
 }
}
--- 共有 1 条评论 ---
aduan谢谢,完美解决 2年前 回复
顶部