REST 请求处理

REST 请求处理,第1张

javaxwsrsextProviders 是JAX-RS 20定义的一种辅助接口,其实现类用于辅助REST框架完成过滤和读写拦截的功能,可以使用@Provider 注解标注这些类。Providers接口一共定义了四个方法,分别用来获取MessageBodyReader,MessageBodyWriter,ExceptionMapper,ContextResolver

Jersey 之所以支持那么多中响应实体的传输格式,是因为其底层实体Providers具备的对不同格式的处理能力。Jersey内部提供了丰富的MessageBodyReader和MessageBodyWriter 接口的实现类,用于处理不同格式的表述

如上图,请求流程中存在三种角色,分别是:用户,REST客户端和REST服务器,请求始于请求的发送,止于调用Resonse的readEntity()方法
(1)用户请求提交数据,客户端接收请求,进入第一个扩展点:客户端请求过滤器 ClientRequestFilter 的filter()方法
(2)请求处理过滤完毕后,流程进入第二个扩展点:客户端写拦截器WriterInterceptor实现类的aroundWriterTo() 方法,实现对客户端序列化 *** 作的拦截
(3)客户端消息体写处理器MessageBodyWriter 执行序列化,流程从客户端过渡到服务器端
(4)服务器接收请求,流程进入第三个扩展点:服务器前置请求过滤器ContainerRequestFilter实现类 的filter()方法
(5)过滤器处理完毕后,服务器根据请求匹配资源方法,如果匹配到相应的资源方法,流程进入第四个扩展点:服务器后置请求过滤器ContainerRequestFilter 实现类 的filter() 方法
(6)后置请求过滤器处理完毕后,力促进入第五个扩展点:服务器读拦截器ReaderInterceptor实现类 的aroundReadFrom() 方法,拦截服务器端反序列化 *** 作
(7)服务器消息体读处理器MessageBodyReader 完成对客户端数据流的反序列化,服务器执行匹配的资源方法
(8)REST请求资源的处理完毕后,流程进入第六个扩展点:服务器响应过滤器 ContainerResponseFilter 实现类 的filter() 方法
(9)过滤器处理完毕后,流程进入第七个扩展点:服务器写拦截器WriterInterceptor实现类 的aroundWriterTo() 方法,实现对服务器端序列化到客户端这个 *** 作的拦截
(10)服务器消息体写处理器MessageBodyWriter 执行序列化,流程返回到客户端一侧
(11)客户端接收响应,流程进入第八个扩展点:客户端响应过滤器ClientResponseFilter 实现类 的filter() 方法
(12)过滤处理完毕后,客户端响应实例response 返回到用户一侧,用户执行responsereadEntity(),流程进入第九个扩展点:客户端拦截器ReaderInterceptor实现类 的aroundReadFrom() 方法,对客户端反序列化进行拦截
(13)客服端消息体读处理器MessageBodyReader 执行反序列化,将Java类型的对象最终作为readENtity()方法的返回值

JAX-RS-20定义的4种过滤器扩展点接口,供开发者实现其业务逻辑,按请求处理流程的先后顺序为:客户端请求过滤器(ClientRequestFilter) -------> 服务端请求过滤器(ContainerRequestFilter)-------->服务端响应过滤器(ContainerResponseFilter)——>客户端响应过滤器(ClientResponseFilter)

ClientRequestFilter

ClientResponseFilter

ContainerRequestFilter

ContainerResponseFilter

Jersey 内部实现了几个典型应用的拦截器,他们是成对出现的
ReaderInterceptor

WriterInterceptor

编码解码拦截器(ContentEncoder)

优先级的定义使用注解 @Priority ,优先级的值是一个整数值,对于ContainerReauest,PreMatchContainerRequest,ClientRequest 和读写拦截器 采用升序策略,数值越小,优先级越高;对于ContainerResponse和ClientResponse采用降序策略,数值越大,优先级越高

前置代理端口是指客户端(例如Web浏览器)向代理服务器发送请求时使用的端口号。代理服务器接收请求,将其转发到互联网上的目标服务器,并将响应返回给客户端。常见的前置代理端口包括80端口(>首先我们需要准备一台带有网卡的服务器,然后检查一下服务器的是否可以证长使用里边的浏览器。
2
/4
接下来就是将前置机的一个相关的服务程序拷贝在我们准备的那一台服务器上,安装后将这个程序重新启动。
3
/4
其次就是将服务器上的一个集中器进行相应的一个改动,然后检查现在的一个集中器以及前置机是否存在问题。
淘宝热卖
根据文章内容为您推荐
广告
前置过滤器 自动刮洗 家用自来水净水器大流量反冲洗
¥1580 元
查看
全屋自来水前置过滤器大流量净水器反冲洗全家管道中央净水机家用
¥396 元
查看
高端前置过滤器家用自动反冲洗全屋大流量自来水管道入户滤净水器
¥35798 元
查看
智能前置过滤器家用全屋全自动大流量自来水反冲洗入户管道净水机
¥99998 元
查看
4
/4
最后安装集中器之后我们需要将IP地址的设置正确化,并且需要查看SAM卡手存在欠费或者是其他的问题。
总结
1
/1
1准备一台带有网卡的服务器。
2将前置机的程序在服务器上拷贝。
3将IP地址的设置正确化。
注意事项
集中器一定要上电。
IP地址一定要检查是否真正确。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10572743.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-09
下一篇 2023-05-09

发表评论

登录后才能评论

评论列表(0条)

保存