NutzCN Logo
问答 含有特殊字符的路径匹配
发布于 3331天前 作者 xiaomi8888 2460 次浏览 复制 上一个帖子 下一个帖子
标签: mvc

context/api/mods/x/y/main.js,/x/y/common.js

这么一个路径,试图匹配:

@At("/mods/*")
@Ok("raw:application/javascript")
public String mods(String mods) {}

但是不管用,于是准备自定义adapter:
public class ApiAdapter implements HttpAdaptor {
public Object[] adapt(ServletContext sc, HttpServletRequest req, HttpServletResponse resp, String[] pathArgs) {
//String value = StringUtils.join(pathArgs);
return new String[]{value};
}
}
adapter方法里,发现pathArgs已经被分割了,无法恢复成原始,想获取到context/api/mods之后的所有内容,有没有什么办法?
我能想到的是获取到requset path,然后通过replace "context/api/mods"为空,但是这样跟具体的路由映射耦合了。
有没有别的办法?

4 回复

1.b.53支持这样写

@At("/mods/**")
public void mods(String path, .... 其他参数)

我勒个去,文档么同步啊。

@xiaomi8888 额, 貌似写了吧

PS: @Ok("raw:js") 与 @Ok("raw:application/javascript") 等价

添加回复
请先登陆
回到顶部