【发布时间】:2018-03-12 11:41:30
【问题描述】:
我需要为多个事件从 office 365 获取与 eventId 相关的信息。
有没有办法在单个 REST 调用中获取该信息? 我只想要特定的事件(仅基于 eventId 的)
【问题讨论】:
标签: rest calendar office365 microsoft-graph-api office365api
我需要为多个事件从 office 365 获取与 eventId 相关的信息。
有没有办法在单个 REST 调用中获取该信息? 我只想要特定的事件(仅基于 eventId 的)
【问题讨论】:
标签: rest calendar office365 microsoft-graph-api office365api
批处理请求可能是您正在寻找的。
更多信息请参见json Batching Documentation
请记住,批处理目前限制为每条消息 20 个请求 (known issues)
示例:
您需要向批处理端点发送 POST 消息
https://graph.microsoft.com/v1.0/$batch
在正文中,您需要包含您的请求: 注意:不要在 url 属性中包含服务器 url (https://graph.microsoft.com/v1.0/),否则请求将失败并显示“BadRequest - Invalid request Uri”。
请求正文:
{
"requests": [
{
"id": "1",
"method": "GET",
"url": "/me/calendarview?startdatetime=2018-03-01T18:31:34.206Z&enddatetime=2018-03-12T18:31:34.206Z"
},
{
"id": "2",
"method": "GET",
"url": "/me/events/{someEventId}"
},
]
}
当服务器处理完所有请求后,将返回一个包含结果的响应数组:
服务器响应:
{
"responses": [
{
"id": "2",
"status": 200,
"headers": {
"OData-Version": "4.0",
"Content-Type": "application/json;odata.metadata=minimal;odata.streaming=true;IEEE754Compatible=false;charset=utf-8",
"ETag": "W/\"Z+ICSvkiAfZX7XWQAZ6IH==\""
},
"body": {
// the event object
}
},
{
"id": "1",
"status": 200,
"headers": {
"OData-Version": "4.0",
"Content-Type": "application/json;odata.metadata=minimal;odata.streaming=true;IEEE754Compatible=false;charset=utf-8"
},
"body": {
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('aUserID')/calendarView",
"value": [
// list of found event-objects
]
}
}
]
}
【讨论】: