Bonjour !
Alors voilà, j'ai un léger soucis plutôt embêtant. J'ai réussi à mettre un place un système pour envoyer une requête POST vers une API destinée pour l'envoi d'email.
Jusque là, tout va bien. Or, quand je tente d'y ajouter un fichier PDF en pièce jointe, je le reçois mais il est corrompu. Le fichier PDF en question est issu d'un BLOB généré par JasperReport.
Ici, vous avez mon code pour les données form-data :
Je me demande si cela ne vient pas du apex_web_service.blob2clobbase64(p_attachment).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40 l_request_body := l_newline || '--' || lco_boundary || l_newline || 'Content-Disposition: form-data; name="from"' || l_newline || l_newline || p_from || ' <customer@mailgun.koust.net>' || l_newline || '--' || lco_boundary || l_newline || 'Content-Disposition: form-data; name="to"' || l_newline || l_newline || p_to || l_newline || '--' || lco_boundary || l_newline || 'Content-Disposition: form-data; name="subject"' || l_newline || l_newline || p_sub || l_newline || '--' || lco_boundary || l_newline || 'Content-Disposition: form-data; name="text"' || l_newline || l_newline || p_body || l_newline || '--' || lco_boundary || l_newline || 'Content-Disposition: form-data; name="html"' || l_newline || l_newline || p_html || l_newline /** ENVOI DU PDF **/ || '--' || lco_boundary || l_newline || 'Content-Disposition: form-data; name="attachment"; filename="file.pdf"' || l_newline || 'Content-Type: application/pdf' || l_newline || l_newline || apex_web_service.blob2clobbase64(p_attachment) || l_newline || '--' || lco_boundary || l_newline || 'Content-Disposition: form-data; name="filename"' || l_newline || l_newline || 'file.pdf' || l_newline || '--' || lco_boundary || l_newline || 'Content-Disposition: form-data; name="MAX_FILE_SIZE"' || l_newline || l_newline || '4000000' || l_newline || '--' || lco_boundary || '--';
p_attachment étant le blob de Jasper.
Une idée de la provenance de la corruption? Le fichier fait la bonne taille mais est illisible, peu importe le logiciel utilisé!
Merci.
Partager