Как POST csrf_token в Multipart / form-data с RestTeamplate - PullRequest
0 голосов
/ 04 августа 2020

Я хочу отправить сообщение multipart/form-data. Однако мне также нужно отправить csrf_token POST, поэтому у меня возникла идея включить его в multipart:

    TokenController token = new TokenController();
    String csrfToken = token.getToken();


    HttpHeaders headers = new HttpHeaders();
    headers.setContentType(MediaType.MULTIPART_FORM_DATA);

    MultiValueMap<String, Object> body = new LinkedMultiValueMap<>();
    body.add("csrf_token", csrfToken);
    body.add("project-file", new ClassPathResource("test-1.csv"));
    body.add("project-name", "testAPI");

    String url = "http://localhost:3333/command/core/create-project-from-upload?";

    HttpEntity<MultiValueMap> requestEntity = new HttpEntity<>(body, headers);
    ResponseEntity<String> responseEntity = restTemplate.postForEntity(url, requestEntity, String.class);

Удивительно, когда я получаю:

Writing [{csrf_token=[myToken], project-file=[class path resource [test-1.csv]], project-name=[testAPI]}] as "multipart/form-data"

но также: {"code":"error","message":"Missing or invalid csrf_token parameter"}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...