GMAIL API pour l'envoi d'un courrier électronique avec pièce jointe

Je travaille sur un client javascript capable de lire un CSV qui contient une liste url d'image.

Je peux lire le csv au moyen de jquery-csv et dessiner chaque image dans un canevas html5.

L'étape suivante consiste à appliquer à chaque image une couche de texte et à envoyer l'image par courrier électronique à l'aide de Gmail Api.

Donc, ma difficulté est de trouver un exemple qui me montre comment prendre une toile et l'attacher à un courrier électronique en utilisant uniquement javascript.

Dois-je créer un json selon les directives multipartite de Gmail et l'envoyer comme un corps POST tel que spécifié?

Pouvez-vous m'envoyer un exemple?

// Get the canvas from the DOM and turn it into base64-encoded png data. var canvas = document.getElementById("canvas"); var dataUrl = canvas.toDataURL(); // The relevant data is after 'base64,'. var pngData = dataUrl.split('base64,')[1]; // Put the data in a regular multipart message with some text. var mail = [ 'Content-Type: multipart/mixed; boundary="foo_bar_baz"\r\n', 'MIME-Version: 1.0\r\n', 'From: [email protected]\r\n', 'To: [email protected]\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: image/png\r\n', 'MIME-Version: 1.0\r\n', 'Content-Transfer-Encoding: base64\r\n', 'Content-Disposition: attachment; filename="example.png"\r\n\r\n', pngData, '\r\n\r\n', '--foo_bar_baz--' ].join(''); // Send the mail! $.ajax({ type: "POST", url: "https://www.googleapis.com/upload/gmail/v1/users/me/messages/send?uploadType=multipart", contentType: "message/rfc822", beforeSend: function(xhr, settings) { xhr.setRequestHeader('Authorization','Bearer {YOUR_API_KEY}'); }, data: mail });