我有以下问题。是否可以为不同的路径添加多个自定义HandlerMethodArgumentResolver
?
例如,我想要一个对HandlerMethodArgumentResolver
执行A的/myapi/someMapping1/
和对/myapi/someMapping2/
执行B的另一个。
我知道HandlerInterceptor
可能有类似的行为,但我想知道HandlerMethodArgumentResolver
是否也可以使用。
最佳答案
实际上,经过一些研究,我找不到这种方法的现成的实现。实际上,经过一番考虑之后,我的用例示例尽管我需要这样的东西,但可以变得更简单(因此不需要这样的东西)。
虽然如此,这样的事情势在必行,实际上可以创建HandlerMethodArgumentResolver
的具体实现,在该实现中可以注入请求。
有了这个,可以使用适当的方法检查请求的来源,并且supportsParameter
和resolveArgument
都可以相应地实现。
尽管单个API可能会公开有关特定资源的信息和操作,但我看不出可能需要这样的原因。