Je souhaite pouvoir télécharger un fichier à partir d'un service hérité via un service Web Spring de couche intermédiaire. Le problème actuellement est que je retourne le contenu du fichier et non le fichier lui-même.Spring Web: Télécharger un fichier à partir d'un service via un service Spring
J'ai déjà utilisé FileSystemResource
, mais je ne veux pas faire cela, car je veux que Spring redirige et ne crée aucun fichier sur le serveur lui-même.
Voici la méthode:
@Override
public byte[] downloadReport(String type, String code) throws Exception {
final String usernamePassword = jasperReportsServerUsername + ":" + jasperReportsServerPassword;
final String credentialsEncrypted = Base64.getEncoder().encodeToString((usernamePassword).getBytes("UTF-8"));
final HttpHeaders httpHeaders = new HttpHeaders();
httpHeaders.add("Accept", MediaType.APPLICATION_JSON_VALUE);
httpHeaders.add("Authorization", "Basic " + credentialsEncrypted);
httpHeaders.setAccept(Arrays.asList(MediaType.APPLICATION_OCTET_STREAM));
final HttpEntity httpEntity = new HttpEntity(httpHeaders);
final String fullUrl = downloadUrl + type + "?code=" + code;
return restTemplate.exchange(fullUrl, HttpMethod.GET, httpEntity, byte[].class, "1").getBody();
}
* Le problème actuellement est que je retourne le contenu du fichier et non le fichier lui-même *: qu'est-ce que ce mea n? Que faites-vous, qu'espérez-vous qu'il se passe et que se passe-t-il à la place? –
J'essaie de télécharger un fichier situé dans un autre service Web. Je veux télécharger le fichier. J'obtiens le contenu brut du fichier affiché. –
Cela répond à la partie "que se passe-t-il plutôt". Qu'attendez-vous? –