JFinal获取action和参数问题

aduan 发布于 2016/03/04 11:46
阅读 515
收藏 0

@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

加载中
0
JFinal
JFinal

   这种将 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());
 }
}
aduan
aduan
谢谢,完美解决
0
aduan
aduan
好,我试试,谢谢!
返回顶部
顶部