gpt4 book ai didi

php - 在 Gmail API 中获取按日期和时间排序的消息/邮件

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:49:58 26 4
gpt4 key购买 nike

我正在开发一个网络应用程序,我需要每小时检查一次从我的 gmail 帐户中的特定发件人收到的“最新邮件”。

为了实现这一点,我使用了适用于 PHP 的 Gmail API,并且能够从特定发件人处检索邮件,但我需要根据日期和时间对这些邮件/消息进行排序,以便我可以获得来自特定发件人的最后一封电子邮件。

我检查了Advanced Search options of Gmail API 它提供了关于日期的排序,但是它没有提供任何方法来处理它关于时间。

有没有办法获取时间和日期并进行排序?或者任何其他可以帮助我从特定发件人那里获取“最新”邮件的方法?

请帮帮我。提前致谢。

最佳答案

您可以只列出消息,要求提供一条消息并明确说明它应该来自哪个电子邮件地址。

maxResults = 1
query = from:example@gmail.com

GET https://www.googleapis.com/gmail/v1/users/me/messages?maxResults=1&q=from%3Aexample%40gmail.com&access_token={YOUR_API_KEY}

响应:

{
"messages": [
{
"id": "14e97f7ea9b794a4", // This is the Id of the latest message.
"threadId": "14e97f7ea9b794a4"
}
],
"nextPageToken": "03176727664356668776",
"resultSizeEstimate": 3
}

现在只是获取消息的问题!如果您对用户收到邮件的时间感兴趣,您可以询问 internalDate,它表示自消息创建以来的时间(以毫秒为单位)。

fields = internalDate,payload/body/data

GET https://www.googleapis.com/gmail/v1/users/me/messages/14e97f7ea9b794a4?fields=internalDate%2Cpayload%2Fbody%2Fdata&access_token={YOUR_API_KEY}

响应:

{
"internalDate": "1437068683000", // This is when the message was created.
"payload": {
"body": {
"data": "VGhlIGFjdHVhbCBtZXNzYWdlIHRleHQgZ29lcyBoZXJl" // This is the mail data.
}
}
}

这不是 php 代码,但你比我更清楚!只需在您的框架中使用相同的查询和字段,您就会得到相同的结果。

关于php - 在 Gmail API 中获取按日期和时间排序的消息/邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29919867/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com