使用Gmail API搜索参数

时间:2017-02-18 19:03:18

标签: javascript gmail-api

我正在使用gmail API搜索邮件。我想包含一些搜索参数,但我无法弄清楚如何使用多个搜索参数。我想做old_than和-unsubscribe

$(document).ready(function() {
    var submitButton = 0;

  function randomPicture (){
    min = Math.ceil(1);
    max = Math.floor(14);
    var pictureNumber = Math.floor(Math.random() * (max - min)) + min;
    $('.sidetext').css('background-image', 'url(images/pic'+pictureNumber+'.jpg)');
    console.log(pictureNumber);
  }

    $('#submit').click(function(){
      randomPicture();
      var searchTerm = $('#input-person').val();
      listMessages('me', searchTerm, listMessageCallback);
       submitButton = submitButton + 1;
     $('.quote').remove();  

    });

    function listMessages(userId, query, callback) {
      $('#content').css('left', $('sidetext'.offsetLeft));
      var getPageOfMessages = function(request, result) {
          request.execute(function(resp) {
            result = result.concat(resp.messages)
        };

      var initialRequest = gapi.client.gmail.users.messages.list({
        'userId': userId,
        'q': query
      });

      // var Request = gapi.client.gmail.users.messages.list({
      //     'q': 'older_than:1y'
      // });

      getPageOfMessages(initialRequest,[]);
    }

    function listMessageCallback(result){
      console.log(result[0].id);
      var messageId = result[0].id;
      getMessage('me', messageId, getMessageCallback)

    }

    function getMessageCallback(result){
      console.log(result)
      $('#content').html(result.snippet);
      $('#content').css('font-size', '20px');
      $('#content').css('bottom-margin', '0');
      // $('#content').app
    }

    function getMessage(userId, messageId, callback) {
      var request = gapi.client.gmail.users.messages.get({
        'userId': userId,
        'id': messageId,
        'nonce': Math.random()
      });
      request.execute(callback);
    }


  })

1 个答案:

答案 0 :(得分:2)

根据Searching for Messages

  

您可以使用以下搜索或过滤文件   messages.list   和threads.list方法。这些方法接受q参数   支持与Gmail网络界面相同的高级搜索语法

样品:

GET https://www.googleapis.com/gmail/v1/users/me/messages?q="in:sent after:2014/01/01 before:2014/01/30"

您可以合并Search operators you can use with Gmail中所述的多个参数。

Sample:

Messages that match multiple terms  
OR or { }

Example: from:amy OR from:david

Example: {from:amy from:david}