NutzCN Logo
问答 动态返回静态资源的路由该怎么设置
发布于 3361天前 作者 xiaomi8888 2415 次浏览 复制 上一个帖子 下一个帖子
标签: mvc

一般情况,静态资源比如js png请求时,nutz推荐通过filter将这些请求过滤掉,直接返回,比如

<filter>
    <filter-name>nutz</filter-name>
    <filter-class>org.nutz.mvc.NutFilter</filter-class>
    <init-param>
        <param-name>modules</param-name>
        <param-value>org....MainModule</param-value>
    </init-param>
    <init-param>
        <param-name>ignore</param-name>
        <param-value>^(.+[.])(jsp|png|gif|jpg|js|css|jspx|jpeg|html|woff|font)$</param-value>
    </init-param>
</filter>

但是如果某些静态资源比如js需要后台动态生成,怎么处理?
@IocBean
@At("/api")
@Filters
public class ApiController {
@At("/api.js")
@Ok("raw:application/javascript")
public String api() {
return "";
}

这样的处理好像不管用,应为通过/api/api.js请求的时候好像被过滤掉了。

2 回复

几个思路:
1. ignore里面去掉js, 找不到入口方法的路径, 依然会继续doFilter, 静态文件也正常
2. 继承NutFilter, 覆盖isExclusion方法的实现

PS: @At注解是不能带后缀的

哦了,还是用第一种

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