首页 > 解决方案 > 混合了 Path Param 和 RequestParam 的 Rest API

问题描述

我被要求构建一个混合了路径参数和请求参数的 Rest 端点,看起来像 -

/user/{user}?refresh={refresh}

请求参数应该是可选的。

我已经尝试过String getUser(@PathVariable String user, @RequestParam Map<String, String> params);,但它使 RequestParam 成为强制性的(如 Swagger UI 中所示)。

我怎样才能使它成为可选的?

标签: javaspring-bootswagger-ui

解决方案


在注解中设置required为,如下:false@RequestParam

@GetMapping("/user/{user}?refresh={refresh}")
String getUser(@PathVariable String user, @RequestParam(required = false) String refresh) {
    ...
}

推荐阅读