Получить выборочные параметры в виде карты в Spring REST

Я написал Spring REST-сервис, который принимает 4 параметра. Один из параметров "логин" известен, а остальные 3 являются динамическими. Есть ли способ, с помощью которого я могу получить логин в качестве параметра и остальные параметры в многозначной карте? Я попробовал следующее и получил значение как в переменной "login", так и в многозначную карту. Я хочу, чтобы логин не был включен в карту MultiValue

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

Пример 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

Пожалуйста, дайте мне знать, если то, что я ищу, можно сделать

1 ответ

Решение

Это не может быть сделано. Параметр запроса "имя" всегда будет включен во все параметры, потому что это параметр запроса. Вы можете удалить его вручную с карты параметров.

Другие вопросы по тегам