我要发布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"}