现在一般很少会用到Webservice了,但有时候和第三方传统机构对接,他们用的可能是WebService。这里写下CXF 拦截器的使用。
拦截器分为服务端拦截器和客户端拦截器,又分为入拦截器(in)和出拦截器(out)
先讲述一个Webservice请求过程如下。
1、首先是客户端发起请求,在请求到达服务端之前,我们可以用客户端出拦截器(client out interceptor)进行拦截,比如可以修改下请求报文。
2、客户端发出请求后,接下来应该是服务端接收请求了。服务端接收请求之前可以通过服务端入拦截器(server in interceptor)先进行报文的拦截。
3、服务端接收到请求之后,自身需要处理,处理完请求后,就会进行响应了。在响应抵达客户端之前,我们可以通过服务端出拦截器(server out interceptor)进行相应报文的拦截。
4、接下来是客户端接收响应消息了,在客户端接收响应消息之前,我们可以通过客户端入拦截器(client in interceptor)进行拦截。
借助拦截器我们通常可以用来对报文XML消息体进行修改,比如我们可以根据实际需要修改其命名空间或者甚至XML消息内容。
一般我们要么是在消息发出之前(分为客户端消息发给服务端之前(client out interceptor),或者服务端发消息给客户端响应之前(server out interceptor)进行修改(此时是出拦截器,对应的