sun*_*leo 9 java rest web-services jax-rs jersey
我知道过滤器用于处理请求,可以使用http header和httpmethods做事,但我很困惑
clientrequestfilter和containerrequestfilter有什么区别?在哪种情况下我们必须使用clientrequestfilter和containerrequestfilter?
我试过这个网站,但没有任何关于此的细节.
请帮我理解这个.
Pau*_*tha 12
REST交互有两个方面,即客户端和服务器.Jersey/JAX-RS-2同时具有客户端API和"主要"服务器端API.使用Client API时,我们可以使用ClientRequestFilter,当使用Server Side API时,我们会使用ContainerRequestFilter.没有可能混合和匹配这些,它们应该严格地与交互的适当方面一起使用.
一ContainerRequestFilter(服务器端)的例子是做一些授权/认证,其中一个很常见的用例服务器端过滤器.在到达任何资源之前,将调用过滤器
Client ---> Internet ---> Server ---> Filter ---> Resource
Run Code Online (Sandbox Code Playgroud)
一个ClientRequestFilter(客户端)例如将实施一些客户端缓存(有点嘲讽的浏览器缓存).或者aa情况(已经实现)是一个过滤器,用于对BASIC身份验证的用户名和密码进行编码.在请求实际发送到服务器之前,将调用客户端过滤器.
Client ---> Filter ---> Internet ---> Server ---> Resource
Run Code Online (Sandbox Code Playgroud)
还有XxxResponseFilters以下流程
Resource ---> ContainerResponseFilter ---> Server ---> Internet ---> Client
Server ---> Internet ---> ClientResponseFilter ---> Client
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2492 次 |
| 最近记录: |