Gmail API - не определен пробел - PullRequest
0 голосов
/ 16 сентября 2018

Я использую приведенную ниже функцию из API Gmail Google, чтобы получать все сообщения от пользователя, и при выполнении кода я получил ошибку не определено.

 /**
     * Retrieve Messages in user's mailbox matching query.
     *
     * @param  {String} userId User's email address. The special value 'me'
     * can be used to indicate the authenticated user.
     * @param  {String} query String used to filter the Messages listed.
     * @param  {Function} callback Function to call when the request is complete.
     */
    function listMessages(userId, query, callback) {
      var getPageOfMessages = function(request, result) {
        request.execute(function(resp) {
          result = result.concat(resp.messages);
          var nextPageToken = resp.nextPageToken;
          if (nextPageToken) {
            request = gapi.client.gmail.users.messages.list({
              'userId': userId,
              'pageToken': nextPageToken,
              'q': query
            });
            getPageOfMessages(request, result);
          } else {
            callback(result);
          }
        });
      };
      var initialRequest = gapi.client.gmail.users.messages.list({
        'userId': userId,
        'q': query
      });
      getPageOfMessages(initialRequest, []);
    }

У меня есть библиотеки, определенные в моемкод

var fs = require('fs'); 
var readline = require('readline'); 
var google = require('googleapis'); 

Ошибка, которую я получил:

var initialRequest = gapi.client.gmail.users.messages.list({
                       ^
ReferenceError: gapi is not defined

Любая помощь, где я не прав?

Ответы [ 2 ]

0 голосов
/ 18 сентября 2018

У Google есть хороший быстрый старт для Gmail API на узле, см .: https://developers.google.com/gmail/api/quickstart/nodejs

Вы устанавливаете библиотеку Google API (если вы еще этого не сделали) с помощью:

npm install googleapis@27 --save

Вам нужно пройти через поток Oauth2, чтобы получить авторизацию для доступа к API, но, поскольку вы работаете на стороне сервера (например, на узле), поток будет сильно отличаться от многих на стороне клиента ( например, браузер) Примеры Javascript там.

См. Файл, связанный в кратком руководстве для полного примера: https://github.com/gsuitedevs/node-samples/blob/master/gmail/quickstart/index.js

0 голосов
/ 16 сентября 2018

Вам нужно использовать этот скрипт во время выполнения, чтобы гэппи загружался.

<script src="https://apis.google.com/js/api.js"></script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...