我目前正在使用NodeJS挂接到Gmail API。我的连接正常,可以访问我的消息等,但实际上很难通过API发送电子邮件。这是我下面的内容:
/**
* Send Message.
*
* @param {String} userId User's email address. The special value 'me'
* can be used to indicate the authenticated user.
* @param {String} email RFC 5322 formatted String.
* @param {Function} callback Function to call when the request is complete.
*/
function sendMessage(userId, email, callback, auth) {
// Using the js-base64 library for encoding:
// https://www.npmjs.com/package/js-base64
//var base64EncodedEmail = Base64.encodeURI(email);
var base64EncodedEmail = Buffer.from(email).toString('base64');
var request = gapi.client.gmail.users.messages.send({
'userId': userId,
'resource': {
'raw': base64EncodedEmail
}
});
request.execute(callback);
}
这大部分来自官方文档(here)。我这样称呼该函数:
authorize(JSON.parse(content), sendMessage('me', btoa('This is a test')));
我得到的错误是:
var request = gapi.client.gmail.users.messages.send({ ^
ReferenceError:未定义gapi 在sendMessage(D:\ Documents \ Web Programming \ React \ neis-guy-painting \ src \ Server \ Node \ gmail.js:148:17) 在fs.readFile(D:\ Documents \ Web编程\ React \ neis-guy-painting \ src \ Server \ Node \ gmail.js:23:34) 在FSReqWrap.readFileAfterClose上(按oncomplete)(fs.js:511:3)
我意识到这是因为我没有定义gapi
,但是我似乎无法弄清楚应该应该是什么。
我在这里想念什么?