У меня есть интранет-сайт для небольшой медицинской клиники, и на первой странице я хочу отобразить предстоящие события, связанные с учетной записью электронной почты MS Office 365 в масштабах всей клиники.
Я новичок в API, поэтому некоторые ресурсы о том, как начать, могли бы помочь.
Сайт написан на PHP, но, насколько я понимаю, функции API можно выполнять на JavaScript — в любом случае это нормально.
Как только я смогу получить файл XML или JSON от Microsoft, я почти уверен, что смогу выяснить, как отформатировать его для сайта. Проблема только в получении информации.
Пока что у меня есть:
<script>
var req = new XMLHttpRequest();
req.open("GET", "https://outlook.office365.com/api/v1.0/users/{email address}/events", false);
req.send();
console.log(req.status);
console.log(req.StatusText);
</script>
Консоль вошла:
"NetworkError: 401 Anonymous Request Disallowed
Я также попробовал линию req.open("GET", "https://outlook.office365.com/api/v1.0/users/me/events", false{or true}/ {username}, {password});
, к которому консоль вошла
NS_ERROR_DOM_BAD_URI: Access to restricted URI denied
Почти вся документация, которую я могу найти, направлена на отдельных пользователей (сотрудников компании), взаимодействующих с их учетными записями 365 через некоторый веб-интерфейс, поэтому почти все URL-адреса имеют /me/
в них, указывая, что они аутентифицированы как-то. Но я хочу, чтобы мой скрипт PHP или JavaScript автоматически аутентифицировал одного пользователя и получал информацию. Я предполагаю, что это требует жесткого кодирования пользователя и пароля где-то, но я не нашел таких примеров.
Я, очевидно, в порядке над головой, но кто-нибудь может дать какой-нибудь совет, как мне это сделать? Или узнать больше о том, как работают API? Большая часть документации предназначена для людей, которые уже имеют определенный уровень знаний, которого у меня нет, и не знают, как его получить.
Благодарю.
Отсутствует часть аутентификации (OAuth) для подключения вашего приложения к O365.
Может быть, это помогает http://msdn.microsoft.com/library/bde5647a-fff1-4b51-b67b-2139de79ce4a%28Office.15%29.aspx
Да, вам нужно пройти аутентификацию в API-интерфейсах Office 365, как указано ранее. Чтобы совершать звонки на Office 365, необходимо зарегистрировать приложение для OAuth на Azure AD.
Я бы посоветовал посмотреть на http://dev.office.com/getting-started/office365apis. Он должен помочь вам настроить аутентификацию и показать, как сделать остальной вызов.