在 Spring REST 中获取选择性参数作为地图
Get selective params as a map in Spring REST
我写了一个 Spring REST 服务,它有 4 个参数。其中一个参数 "login" 是已知的,其余 3 个是动态的。有什么方法可以让我在 MultiValue Map 中作为参数和其余参数登录?我尝试了以下操作并在变量 "login" 中都获得了值,它也包含在多值映射中。我希望登录不包含在多值映射中
public void getDataForDownload(@RequestParam("login") String login, @RequestParam MultiValueMap<String, Object> parameters, HttpServletResponse response) throws Exception
{
response.setContentType("text/csv");
String headerKey = "Content-Disposition";
String headerValue = String.format("attachment; filename=\"%s\"",
DOWNLOAD_FILE_NAME);
response.setHeader(headerKey, headerValue);
Map<String, Object> params = getParamsAsMap(parameters);
m_download.writeDataToWriter(response.getWriter(), params);
response.getWriter().close();
}
sample URL :
localost:8080/download?login=xyz@xyx.com¶m1=1¶m2=2¶m3=3
当我打印变量时
login:xyz@xyx.com
map:
login = xyz@xyx.com
param1 = 1
param2 = 2
param3 = 3
如果我正在寻找的东西可以完成,请告诉我
这是不可能的。请求参数 "name" 将始终包含在所有参数中,因为它是一个请求参数。您可以从参数映射中手动删除它。
我写了一个 Spring REST 服务,它有 4 个参数。其中一个参数 "login" 是已知的,其余 3 个是动态的。有什么方法可以让我在 MultiValue Map 中作为参数和其余参数登录?我尝试了以下操作并在变量 "login" 中都获得了值,它也包含在多值映射中。我希望登录不包含在多值映射中
public void getDataForDownload(@RequestParam("login") String login, @RequestParam MultiValueMap<String, Object> parameters, HttpServletResponse response) throws Exception
{
response.setContentType("text/csv");
String headerKey = "Content-Disposition";
String headerValue = String.format("attachment; filename=\"%s\"",
DOWNLOAD_FILE_NAME);
response.setHeader(headerKey, headerValue);
Map<String, Object> params = getParamsAsMap(parameters);
m_download.writeDataToWriter(response.getWriter(), params);
response.getWriter().close();
}
sample URL : localost:8080/download?login=xyz@xyx.com¶m1=1¶m2=2¶m3=3
当我打印变量时
login:xyz@xyx.com
map:
login = xyz@xyx.com
param1 = 1
param2 = 2
param3 = 3
如果我正在寻找的东西可以完成,请告诉我
这是不可能的。请求参数 "name" 将始终包含在所有参数中,因为它是一个请求参数。您可以从参数映射中手动删除它。