#api #office365
#API #office365
Вопрос:
Я использую службы rest с новым предварительным просмотром API Office 365.
Моя проблема возникает, когда я запрашиваю, чтобы получить события пользователя (например, например: https://outlook.office365.com/ews/odata/Me/Calendar/Events ), когда я делаю это, мне удается получить некоторые данные в виде списка событий, включая дату начала, дату окончания, тему, местоположение, но я не могу получить список участников мероприятия. Список всегда пуст (он же «Участники»: [],), даже если я могу видеть других пользователей на этом мероприятии через графический интерфейс (онлайн или через клиент). Просто для информации, я являюсь владельцем клиента 0365.
Есть ли какой-либо способ получить список участников? Это правильная проблема или это связано с характером предварительного просмотра api?
Спасибо за ваше время.
Ответ №1:
Я действительно могу воспроизвести то, что вы говорите.
Я даже не могу напрямую вызвать службу REST, чтобы показать каких-либо участников. С расширением или без него.
Только что понял, что если вы запрашиваете определенное событие календаря, вы получаете список участников. Не знаю, почему он не совместим с odata и может быть расширен для включения в набор результатов события.
Вот пример того, что вы получите, если вызовете https://outlook.office365.com/EWS/OData/Users(‘admin@sjkpdevs.onmicrosoft.com’)/Events(‘AAMkADgxZDFhOTkwLTdhZTEtNGI0Yy05OWM4LTgxYjU2NGJjOTM5NQBGAAAAAAAZ8w1ex-72T6eE6TA1YJtABwDcr4oH_FfeToL0_U0uRIeqAAAAAAEOAADcr4oH_FfeToL0_U0uRIeqAAATh3axAAA=’)
{"@odata.context":"https://outlook.office365.com/EWS/OData/$metadata#Users('admin@sjkpdevs.onmicrosoft.com')/Events/$entity","@odata.id":"https://outlook.office365.com/EWS/OData/Users('admin@sjkpdevs.onmicrosoft.com')/Events('AAMkADgxZDFhOTkwLTdhZTEtNGI0Yy05OWM4LTgxYjU2NGJjOTM5NQBGAAAAAAAZ8w1ex-72T6eE6TA1YJtABwDcr4oH_FfeToL0_U0uRIeqAAAAAAEOAADcr4oH_FfeToL0_U0uRIeqAAATh3axAAA=')","@odata.etag":"W/"3K KB/hX3k6C9PlNLkSHqgAAE4eIQw=="","@odata.editLink":"https://outlook.office365.com/EWS/OData/Users('admin@sjkpdevs.onmicrosoft.com')/Events('AAMkADgxZDFhOTkwLTdhZTEtNGI0Yy05OWM4LTgxYjU2NGJjOTM5NQBGAAAAAAAZ8w1ex-72T6eE6TA1YJtABwDcr4oH_FfeToL0_U0uRIeqAAAAAAEOAADcr4oH_FfeToL0_U0uRIeqAAATh3axAAA=')","Id":"AAMkADgxZDFhOTkwLTdhZTEtNGI0Yy05OWM4LTgxYjU2NGJjOTM5NQBGAAAAAAAZ8w1ex-72T6eE6TA1YJtABwDcr4oH_FfeToL0_U0uRIeqAAAAAAEOAADcr4oH_FfeToL0_U0uRIeqAAATh3axAAA=","ChangeKey":"3K KB/hX3k6C9PlNLkSHqgAAE4eIQw==","Subject":"Meeting","BodyPreview":"","Body":{"ContentType":"HTML","Content":"<html>rn<head>rn<meta http-equiv="Content-Type" content="text/html; charset=utf-8">rn<style type="text/css" style="display:none"><!-- p { margin-top: 0px; margin-bottom: 0px; }--></style>rn</head>rn<body dir="ltr">rn<div id="OWAFontStyleDivID" style="font-size:12pt;color:#000000;background-color:#FFFFFF;font-family:Calibri,Arial,Helvetica,sans-serif;">rn<p><br>rn</p>rn</div>rn</body>rn</html>rn"},"Importance":"Normal","Categories":[],"HasAttachments":false,"Start":"2014-06-22T19:30:00Z","End":"2014-06-22T20:00:00Z","Location":{"DisplayName":""},"ShowAs":"Busy","IsAllDay":false,"IsCancelled":false,"IsOrganizer":true,"ResponseRequested":true,"Type":"SingleInstance","SeriesId":null,"Attendees":[{"Name":"mail@sjkp.dk","Address":"mail@sjkp.dk","Status":{"Response":"Accepted","Time":"2014-06-22T19:55:38Z"},"Type":"Required"}],"Recurrence":null,"Attachments@odata.navigationLink":"https://outlook.office365.com/EWS/OData/Users('admin@sjkpdevs.onmicrosoft.com')/Events('AAMkADgxZDFhOTkwLTdhZTEtNGI0Yy05OWM4LTgxYjU2NGJjOTM5NQBGAAAAAAAZ8w1ex-72T6eE6TA1YJtABwDcr4oH_FfeToL0_U0uRIeqAAAAAAEOAADcr4oH_FfeToL0_U0uRIeqAAATh3axAAA=')/Attachments","Calendar@odata.navigationLink":"https://outlook.office365.com/EWS/OData/Users('admin@sjkpdevs.onmicrosoft.com')/Events('AAMkADgxZDFhOTkwLTdhZTEtNGI0Yy05OWM4LTgxYjU2NGJjOTM5NQBGAAAAAAAZ8w1ex-72T6eE6TA1YJtABwDcr4oH_FfeToL0_U0uRIeqAAAAAAEOAADcr4oH_FfeToL0_U0uRIeqAAATh3axAAA=')/Calendar"}
Комментарии:
1. Это работает так, спасибо за ваш ответ и образец!
Ответ №2:
В настоящее время, чтобы получить участников для события в API ODATA, вам необходимо выполнить GET для отдельных событий, которые возвращаются из набора объектов Events .