Fac*_*ree 4 restlet restlet-2.0
我有一个Restlet(v2.1.1)组件,它使用ServerResource来处理HTTP GET请求.
我想将过滤器和/或路由器放入组件中,以便在请求到达ServerResource之前可以进行一些处理.
我一直在互联网上搜索这样做的例子,以及阅读"Restlet in Action"一书.我发现了一些有趣的东西:
有很多关于如何在组件中设置ServerResource的示例.
有很多关于如何创建和设置过滤器和路由器的示例.
不幸的是,我可能通过书籍和互联网搜索,我找不到使用两者的例子!
根据本书和Internet上的教程,我们应该能够创建一个组件,在组件中设置ServerResource,并使用过滤器来预处理发送到ServerResource的请求.没有任何文档似乎告诉我们如何做到这一点.
我误读了一切吗?是否真的没有办法将过滤器或路由器放在带有ServerResources的组件中?或者我错过了一些提供如何执行此操作的真实示例的文档?
有人可以提供一个简单的例子或提供一个这样做的例子的链接吗?
谢谢...
您需要将过滤器附加到路由器,然后使用以下方法将ServerResource附加到过滤器setNext(Class<? extends ServerResource> targetClass):
Filter myFilter = new MyFilter(getContext());
myFilter.setNext(MyServerResource.class);
router.attach("/test", myFilter);
Run Code Online (Sandbox Code Playgroud)
现在您可以使用过滤器的beforeHandle(Request request, Response response)方法进行预处理.如果CONTINUE以此方法返回,则过滤器会将请求传递给ServerResource.
| 归档时间: |
|
| 查看次数: |
1775 次 |
| 最近记录: |