Invio non riuscito della posta tramite google api con javascript

Sto tentando di inviare un’email tramite l’API di Google con JavaScript.

Il mio problema è che quando provo a inviare una semplice mail senza allegati, ottengo il seguente errore:

stringa di messaggi payload RFC822 “grezza” o messaggio di caricamento via / upload / * URL richiesto

Il mio codice

function sendMessage() { gapi.client.load('gmail', 'v1', function() { // Web-safe base64 var to = '[email protected]', subject = 'Hello World', content = 'send a Gmail.' var base64EncodedEmail = btoa( "Content-Type: text/plain; charset=\"UTF-8\"\n" + "Content-length: 5000\n" + "Content-Transfer-Encoding: message/rfc2822\n" + "to: [email protected]\n" + "from: \"test\" \n" + "subject: Hello world\n\n" + "The actual message text goes here" ).replace(/\+/g, '-').replace(/\//g, '_'); var mail= base64EncodedEmail; console.log(mail); var request = gapi.client.gmail.users.messages.send({ 'userId': "me", 'message': { 'raw': mail } }); request.execute(function(response){ console.log(response); }); }); } 

    Dopo giorni avevo trovato la risposta da sola. Il problema era che il “messaggio” nel corpo può essere utilizzato solo quando si invia un allegato nell’e-mail.

    Se non hai allegati, la query sembra come se avessi scritto qui

     var mail= base64EncodedEmail; console.log(mail); var request = gapi.client.gmail.users.messages.send({ 'userId': "me", 'resource': { 'raw': mail } }); request.execute(function(response){ console.log(response); });