Я пытаюсь отправить сообщение с прикрепленным файлом jpeg через API Gmail на стороне клиента Javascript. Но у меня возникла ошибка: требуется адрес получателя. Код, который я написал до сих пор, выглядит следующим образом:
SendMails() {
var img=getBase64();
const mails = [
'Content-Type: multipart/mixed; boundary="foo_bar_baz"\r\n',
'MIME-Version: 1.0\r\n',
'to: limon14203165@gmail.com\r\n',
'from: liibd7@gmail.com\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/jpeg\r\n',
'MIME-Version: 1.0\r\n',
'Content-Transfer-Encoding: base64\r\n',
'Content-Disposition: attachment; filename="example.jpg"\r\n\r\n',
img, '\r\n\r\n',
'--foo_bar_baz--'
].join('');
const path = 'upload/gmail/v1/users/me/messages/send?uploadType=multipart';
const mail = btoa(mails).replace(/\+/g, '-').replace(/\//g, '_').replace(/=+$/, '');
gapi.client.request({
path: path,
headers: {
'Content-Type': 'message/rfc822'
// mimeType: 'message/rfc822'
},
method: 'POST',
body: {
data: mail
}
}).then(response=> {
console.log('Response:', response);
}).catch(err => {
console.log('Error:', err);
});
}
Это приводит к ответу с кодом ошибки 400, причина: «invalidArgument», сообщение: «Требуется адрес получателя. Что я делаю не так? был бы очень признателен, если бы кто-нибудь мог пролить свет на это!