threads.get() 和 messages.get() 按什么顺序返回项目列表?

Dev*_*fly 5 gmail-api

似乎没有记录threads.get()和messages.get()如何对它们返回的结果进行排序。

顺序是按日期/时间降序排列吗?

Meg*_*s91 1

我只是想说,使用 javascript 库 -- messages.list 不会以日期 ASC 或日期 DESC 返回。据我所知,它们是随机返回的。

起初我认为这可能是我的代码,因为我使用 jquery $.each 来解析 JSON,但即使使用本机 javascript for 循环,它们仍然不按日期顺序。看起来返回的消息大部分都是日期 DESC,但时不时会出现乱序的情况。我已经做了相当多的操作来尝试诊断,思考......也许这些消息属于同一个线程......但事实并非如此。

如果有人有关于继续使用 javascript 库的正确方法的提示,请发布。我宁愿简单地处理消息,因为我的应用程序是一个简单的记录,而不是对消息进行完整的 CRUD...所以我只需要一个简单的反向日期顺序的消息列表。

添加:我还使用threads.list和threads.get来返回消息,并且它们在返回时更加随机地排序。真的很喜欢有人发布检索按日期排序的消息的正确方法。将代码复制到这里供任何/所有愿意查看的人参考

function makeApiCall() {
gapi.client.load('gmail', 'v1', function() {
    //console.log('inside call: '+myquery);
  var request = gapi.client.gmail.users.threads.list({
    'userId': 'me',
    'q': myquery
  });
  request.execute(function(resp) {
      //$('.ASAP-emailhouse').append(message+'<br>');
    jQuery(document).ready(function($) {
         var nummessages = resp.threads.length;
             for (i = 0; i < resp.threads.length; i++) { 
                //$('.ASAP-emailhouse').append(resp.messages[i].id+'<br>');
                var threadId = resp.threads[i].id;
                var messagerequest = gapi.client.gmail.users.threads.get({
                    'userId': 'me',
                    'id': threadId
                  });//end var message request
                messagerequest.execute(function(messageresp) {
                    for (m = 0; m < messageresp.messages.length; m++) {
                        //$('.ASAP-emailhouse').append(messageresp.messages[m].payload.headers.length+'<br>');
                         for (n = 0; n < messageresp.messages[m].payload.headers.length; n++) { 
                            //$('.ASAP-emailhouse').append(messageresp.messages[m].payload.headers[n].name+'<br>');
                            if( messageresp.messages[m].payload.headers[n].name == 'Date'){
                                $('.ASAP-emailhouse').append(messageresp.messages[m].payload.headers[n].value+'<br>');
                            }
                         }
                    }
                });
             }//end for each message
      });//end jquery wrapper for wordpress
  });//end request execute list messages
});//end gapi client load gmail
Run Code Online (Sandbox Code Playgroud)

}