struts2对于请求的处理方式

对于struts2而言,一个请求是否被它处理,取决于struts2在web.xml中的配置
<filter-mapping>
<filter-name>struts-prepare</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
如上示例这个地方url-pattern就是指的要进行过滤的url,如果是上面那种
配置就是所有的请求都是要被拦截的,如果是/.action那么就是只有后缀为
.action的请求会被拦截,如果是其他的比如.do那么就只要.do会被拦截.

所以在看一个请求(包括url请求,post请求,ajax请求)是否会被拦截的时候需要看两个地方:
1.请求本身的格式
2.struts2的拦截的url-pattern

还有就是同样的一个struts.xml下面的一个Action下面的result如果不配置
它的name属性的话,那么就表示这是一个默认的结果,就是成功的结果.

而如果一个请求没有指定Action中所要调用的方法的话,那么这个请求将会
被Action的默认的execute方法进行处理,如果返回的是SUCCESS的话,那么.
action会返回结果中被定义了name="SUCCESS"的结果,如果没有这样的一个
结果的话,那么它将会返回默认的没有任何name定义的结果.

而如果一个请求在被Action处理返回之后的过程中中用到了ajax的请求,那么
这些请求会不会被拦截器所截获还是要看上面的那两点,而且后台不会重新的
再返回一个页面回来,因为这个时候的请求是ajax请求,它只会返回部分的数据
但是不会去刷新页面的.

普通的请求和ajax请求的区别在于ajax的请求的头部有

不论是普通http请求还是ajax请求,都可以通过拦截器来将请求捕获,而且区分这两种请求在于头部信息的不同:
普通http请求的header参数中没有x-requested-with:XMLHttpRequest头信息,而异步的有。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值