我开发了一个Spring API / getFileData,它接受三个URI参数即。 businessDate /文件名/的recordId。可以将它们中的任何一个传递为null。但我仍然希望我的API也可以在这种情况下工作。我怎样才能做到这一点?
我尝试过将@GetMapping("getFileData/{businessDate}/{fileName}/{recordId}", "getFileData/{businessDate}//", "getFileData/{businessDate}/{fileName}/")
..so用于所有可能的组合。
@RequestMapping(value = "/getFileData/{businessDate}/{fileName}/{recordId}", method = RequestMethod.GET)
如果错过了某些内容,我希望此API能够用于URI参数的所有组合。例如有人要求,
/getFileData///22
或
/getFileData/22Dec2018/
或
/getFileData//treasure/22
你可以用@RequestParam
类型的java.util.Map
做到这一点。
根据您的设计,您将在控制器方法中使用各种@PathVariable
参数以及路径变量的顺序/{var1}/{var2}...
构造网址,因此我认为不可能跳过网址中的路径变量并仍然调用相同的控制器方法。