threads.get()和messages.get()如何对它们返回的结果进行排序似乎没有记录.
订单是按降序日期/时间?
最佳答案 我只想说使用
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
}