J'ai une application qui crée un fichier PDF et l'envoie au client en utilisant le nœud js. L'application fonctionne parfaitement localement mais quand je serai l'hôte dans un serveur Ubuntu dans Digital Ocean, le point final qui génère le PDF ne fonctionne pasL'envoi d'un PDF du client au serveur ne fonctionne pas avec stream.pipe (res) dans le serveur Ubuntu
Ceci est le code qui envoie le PDF au client:
pdf.create(html, options).toStream((err, stream)=> {
if (err) {
res.json({
message: 'Sorry, we were unable to generate pdf',
});
}
stream.pipe(res)
});
du côté client ce que je communique avec le point final
genratePdf({ commit }, data) {
axios.post('http://localhost:1337/getpdf', data,{ responseType:'arraybuffer' }).then((response) => {
let blob = new Blob([response.data],{type:'application/pdf'})
var link=document.createElement('a');
link.href=URL.createObjectURL(blob);
link.download="Report_"+new Date()+".pdf";
link.click();
}, (err) => {
console.log(err)
})
Quand je lance localement il fonctionne parfaitement:
mais quand je serai l'hôte dans un océan numérique Ubuntu gouttelettes l'autre travail point final, mais le fichier PDF généré un ne fonctionne pas et il me montre que l'erreur
Je pense qu'il est un problème de délai d'attente de l'application n'attend pas pour le flux pour finir de le pipe en res.