Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

219
Views
Cómo enviar pdf a través de gmail api

Implementé gapi/ 0Auth2 en otra parte de mi código y todo funciona, excepto que el PDF adjunto está roto. El PDF no se puede previsualizar y está vacío cuando se descarga.

´´´

 function stuffer() { var sender = "sender@gmail.com"; var receiver = "reciver@hotmail.com"; let dem = pdfCon("ny brab verder"); console.log(dem); var mail = [ 'Content-Type: multipart/mixed; boundary="foo_bar_baz"\r\n', "MIME-Version: 1.0\r\n", "From: " + sender + "\r\n", "To: " + receiver + "\r\n", "Subject: Subject Text\r\n\r\n", "--foo_bar_baz\r\n", 'Content-Type: text/plain; charset="UTF-8"\r\n', "MIME-Version: 1.0\r\n", "Content-Transfer-Encoding: 7bit\r\n\r\n", "The actual message text goes here\r\n\r\n", "--foo_bar_baz\r\n", "Content-Type: application/pdf\r\n", "MIME-Version: 1.0\r\n", "Content-Transfer-Encoding: base64\r\n", 'Content-Disposition: attachment; filename="generated.pdf"\r\n\r\n', dem, "\r\n\r\n", "--foo_bar_baz--", ].join(""); return sendMessage(mail); } function sendMessage(message) { var base64EncodedEmail = btoa(message) .replace(/\+/g, "-") .replace(/\//g, "_"); gapi.client.gmail.users.messages .send({ userId: "me", resource: { raw: base64EncodedEmail, }, }) .then(function (response) { console.log(response); }); } function pdfCon(content) { var pdf = new jsPDF(); pdf.text(content, 10, 10); pdf.setProperties({ title: "new Report", }); return pdf.output("datauristring"); }

´´´

He probado PDF prefabricado, en lugar de jsPDF.

Seguí la documentación en google y miré diferentes publicaciones, pero parece que no hay documentación para este problema específico.

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

De su secuencia de comandos, pensé que el valor devuelto de pdfCon("ny brab verder") es la URL de datos. Entonces, ¿qué tal la siguiente modificación?

De:

 let dem = pdfCon("ny brab verder");

A:

 let dem = pdfCon("ny brab verder").split(",")[1];
  • En esta modificación, el encabezado se elimina de la URL de datos. Con esto, solo se recuperan los datos base64.
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!