我正在尝试使用Gmail API创建一个从Gmail最新独特线程中获取的逻辑。为此,我使用的搜索查询如下所示:
subject:(-"***") (label:sent OR label:inbox)
它在Google的电子邮件信息中心中运行良好。对于我的仪表板,它显示不同的结果。我正在使用方法 listThreads 和 listMessages 。
对于 listThreads 如果线程很久以前就开始了,如果我或其他人继续这个帖子(例如回复电子邮件),我不会在最新消息中看到这个帖子,所以我必须在接下来的几页。但是,在Google的信息中心上,它会显示在第一页上。
对于 listMessages 线程将按照正确的顺序显示,但如果此主题包含2条或更多邮件,则Gmail API将返回2个或更多重复的帖子。
当我使用 listThreads 方法时,有没有办法按最新消息日期预先排序。或者指定我的搜索查询以返回 listMessages 唯一 threadId 的邮件。或者有一种不同的方式来实现我的逻辑?
P.S。如果我在 listThreads 方法的搜索查询中使用in:inbox
,我会得到propper结果,但没有收件箱信息,这是可取的。
对于ListMessages:
{
"id": "163d68e0ac012e74",
"threadId": "163d67b14457c9bd"
},
{
"id": "163d688dbe1c6a5e",
"threadId": "163d67b14457c9bd"
},
{
"id": "163d68743cb38393",
"threadId": "163d67b14457c9bd"
},
{
"id": "163d684f32417253",
"threadId": "163d67b14457c9bd"
},
{
"id": "163d67b14457c9bd",
"threadId": "163d67b14457c9bd"
},
如您所见,他们有相同的threadId