如何使用RestTeamplate在Multipart / form-data中发布csrf_token

时间:2020-08-04 12:40:00

标签: post multipartform-data resttemplate

我要发布multipart/form-data。但是,我还必须发布一个csrf_token,所以我有一个将其包含在多部分中的想法:

    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"}

0 个答案:

没有答案