在Spring REST中将选择性参数作为地图获取

时间:2015-03-18 13:09:46

标签: spring web-services rest http-request-parameters

我编写了一个Spring REST服务,它接受4个参数。其中一个参数"登录"是已知的,其余的3是动态的。有什么方法可以在MultiValue Map中以param和其他params的身份登录?我尝试了以下内容,并在变量" login"中获得了价值。它也被包含在多值地图中。我希望登录不包含在MultiValue Map

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();
}
  

示例网址:   localost:8080 /下载login=xyz@xyx.com&参数1 = 1&安培; param2的= 2及参数3 = 3

当我打印变量时

login:xyz@xyx.com

map:

login = xyz@xyx.com
param1 = 1
param2 = 2
param3 = 3

如果我正在寻找的话,请告诉我

1 个答案:

答案 0 :(得分:0)

这无法完成。请求参数&#34; name&#34;将始终包含在所有参数中,因为它是一个请求参数。您可以从参数图中手动删除它。