2

想要批量请求列表,可以将每条消息的发件人和标题连同它一起带入 gmail api。我怎样才能对它提出批量请求?是否可以使用邮递员发出批量请求?

作为批处理请求的一部分,如何请求批处理请求?

如何对上述要求端点使用批处理请求?

As part of batch request as per google doc ,
POST /batch/farm/v1 HTTP/1.1
Authorization: Bearer your_auth_token
Host: www.googleapis.com
Content-Type: multipart/mixed; boundary=batch_foobarbaz
Content-Length: total_content_length

--batch_foobarbaz
Content-Type: application/http
Content-ID: <item1:12930812@barnyard.example.com>

GET /farm/v1/animals/pony

--batch_foobarbaz
Content-Type: application/http
Content-ID: <item2:12930812@barnyard.example.com>

PUT /farm/v1/animals/sheep
Content-Type: application/json
Content-Length: part_content_length
If-Match: "etag/sheep"

{
  "animalName": "sheep",
  "animalAge": "5"
  "peltColor": "green",
}

--batch_foobarbaz
Content-Type: application/http
Content-ID: <item3:12930812@barnyard.example.com>

GET /farm/v1/animals
If-None-Match: "etag/animals"

--batch_foobarbaz--

根据我的要求,我不知道如何修改文档请求?

4

1 回答 1

2

我怎样才能对它提出批量请求?

通过使用批处理端点Batching

是否可以使用邮递员发出批量请求?

是的邮递员可以处理这个电话。但是您将不得不手动创建考虑到可以包含 100 个请求的主体,这将非常耗时并且容易出错 IMO。

作为批处理请求的一部分,如何请求批处理请求?

通过发送 HTTP Post,其中正文包含您请求数据的每个单个请求。

如何对上述要求端点使用批处理请求?

您可以使用 postman 或任何其他可以处理 http post 调用的编程语言来完成。

正文中的每一行都GET /farm/v1/animals包含您希望对 api 提出的请求,在您的情况下,它类似于users/me/messages/1.

您需要调用 users messages.list 首先获取您想要获取信息的所有消息 ID 的列表。然后将您的批处理请求构建到 user.messages 以获取和请求每条消息。批处理并不意味着您不需要为每个消息批处理发送一个 get 请求,只是为您节省了发送每个 get 请求所进行的额外 http 调用。

POST /batch/gmail/v1 HTTP/1.1
Authorization: Bearer your_auth_token
Host: www.googleapis.com
Content-Type: multipart/mixed; boundary=batch_foobarbaz
Content-Length: total_content_length
Accept-Encoding: application/gzip

--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--
于 2019-09-12T06:40:02.983 回答