Ich versuche, die JIRA Rest API (Version 2) zu verwenden, um eine Zip-Anlage zu einem Problem hinzuzufügen.JIRA REST-API beschädigt hochgeladenen Zip-Anhang
Der Code scheint gut zu funktionieren, aber wenn ich die angehängten Dateien auf dem Ticket anschaue, ist der Anhang fast doppelt so groß wie er sein sollte, und beim Versuch, ihn zu öffnen, finde ich, dass er beschädigt ist.
Ich kann eine Bilddatei (ein Png in meiner Prüfung) ohne ein Problem hochladen.
Der Code Ich verwende ist:
String basic = createBasicAuth();
HttpHeaders headers = new HttpHeaders();
headers.add("Authorization", "Basic " + basic);
headers.add("X-Atlassian-Token", "no-check");
headers.setContentType(MediaType.MULTIPART_FORM_DATA);
LinkedMultiValueMap<String, Resource> map = new LinkedMultiValueMap<>();
map.add("file", new ClassPathResource("/zipfile.zip"));
HttpEntity<LinkedMultiValueMap<String, Resource>> body = new HttpEntity<>(map, headers);
RestTemplate restTemplate = new RestTemplate();
ResponseEntity<String> response = restTemplate.postForEntity(jiraUrl, body, String.class);
habe ich versucht, ein ByteArrayResource
zu verwenden, anstatt ClassPathResource
aber dies führt zu einem 500-Fehler vom Server.
Ich habe auch versucht, jede Ressource in ihre eigenen HttpEntity
, angesichts der Zip-Datei seine eigenen Header mit dem Medientyp auf Anwendung/octet-Stream gegeben.
Hat jemand anderes dieses Problem? Wenn nicht, melde ich mich bei Atlassian. Jede Hilfe wäre großartig.
Dank