Google api 我怎样才能在gmail api中获得包含标题和电子邮件发件人的电子邮件列表?

Google api 我怎样才能在gmail api中获得包含标题和电子邮件发件人的电子邮件列表?,google-api,gmail-api,Google Api,Gmail Api,我试过使用 得到 但仅获取id和threadId作为响应 我想显示带有标题和来自电子邮件的电子邮件列表。是否存在获取信息的api或任何方式?该方法仅返回消息id和线程id的消息列表。这是api本身的一个限制,您无法更改它。这是一个免费的api,我们受到谷歌的限制 { "messages": [ { "id": "16d1f7849145662a", "threadId": "16d1f55457d4e145" }, { "id": "16d1f69d541016e

我试过使用 得到

但仅获取id和threadId作为响应

我想显示带有标题和来自电子邮件的电子邮件列表。是否存在获取信息的api或任何方式?

该方法仅返回消息id和线程id的消息列表。这是api本身的一个限制,您无法更改它。这是一个免费的api,我们受到谷歌的限制

{
 "messages": [
  {
   "id": "16d1f7849145662a",
   "threadId": "16d1f55457d4e145"
  },
  {
   "id": "16d1f69d541016ee",
   "threadId": "16d1f55457d4e145"
  },
为了获得有关该消息的更多信息,您需要对每条消息执行一次检查

GET https://www.googleapis.com/gmail/v1/users/userId/messages/id
对不起,这是唯一的办法,它得到了很多

配料 您可以尝试批处理结束点,一个批处理请求中最多只能调用100次。如果需要进行更多的调用,请使用多个批处理请求

邮递员头条 内容类型多部分/混合;边界=批次_z;类型=应用程序/http

授权持有人ya29.GluBB7_cEfLMThXKuxR_9g8yyjstlwbhrhdptiyxwdabkqlrbxeyfqsfsfsnfyts5b54w7

接受编码应用程序/gzip

邮递员尸体 SMTP
除此之外,你还可以通过这条路。这需要一种编程语言来处理对邮件服务器的直接调用

  • 您需要使用
    GET获取所有感兴趣的电子邮件的ID(您可以使用搜索参数
    q
    过滤结果)https://www.googleapis.com/gmail/v1/users/userId/messages
    -正如您所做的那样
  • 您需要使用
    GET按ID分别检索每个消息https://www.googleapis.com/gmail/v1/users/userId/messages/id
  • 如果您使用自己选择的语言编写代码,则可以使用循环自动化此过程

    示例如何使用:

    函数myFunction(){
    var myMessages=Gmail.Users.Messages.list(“me”,{'maxResults':5});
    Logger.log(myMessages);
    
    对于(var i=0;i@DalmTo你能给我一个方法吗?@DalmTo如果我想像gmail一样显示列表,那么对于每封邮件,我都必须发出请求。这会增加服务器上的负载。是的,但你应该有配额负载,你可以缓冲列表,一旦你收到一封邮件,它不应该改变,也许会得到一个线程id。你可以uld尝试使用批处理端点。您可以在一个请求中提出多个请求。@DalmTo在gmail中,要获取列表以及标题和发件人,如何修改批处理请求?@Sa1关于批处理的文档很少。您需要检查原始文档并从中构建它。如果您使用一个客户端库,它们都支持批处理,并且可能有一个更易于您使用的选项。我对原始批处理请求进行了一些编辑,它应该是这样的。请-1评论-1的原因,以便我可以改进答案,让您更清楚地理解。这都是直接的在文件之外。
    --batch_foobarbaz
    Content-Type: application/http
    
    
    GET gmail/v1/users/me/messages/16d24956228a98c4
    Accept: application/json; charset=UTF-8
    
    --batch_foobarbaz
    Content-Type: application/http
    
    
    GET gmail/v1/users/me/messages/16d24956228a98c4
    Accept: application/json; charset=UTF-8
    
    --batch_foobarbaz--
    
    function myFunction() {
      var myMessages=Gmail.Users.Messages.list("me",{'maxResults': 5 }).messages;
      Logger.log(myMessages);
      for(var i=0;i<myMessages.length;i++){
        var id=myMessages[i].id;
        Gmail.Users.Messages.get('me', id).payload.headers.forEach(function(e){
          if(e.name=="Subject"||e.name=="From"){
            Logger.log(e.name+": "+e.value)
          }
         }
        );
      }
    }