#angularjs #outlook-web-app
#angularjs #outlook-web-app
Вопрос:
Я пытаюсь получить доступ к электронной почте Outlook по ссылке (т. е. https://outlook.office365.com/owa/#viewmodel=ReadMessageItemamp;ItemID=xxxxxxx ) из веб-приложения, которое я создаю. Нажатие на ссылку должно открыть новую вкладку в браузере, запустить Outlook Web App и открыть электронное письмо.
Вместо этого я получаю эту ошибку: заблокирован фрейм с источником «https://outlook.office365.com » из-за доступа к фрейму с перекрестным источником
Я использую директиву AngularJS ng-href для создания ссылки с target=_blank для принудительного открытия на новой вкладке.
Электронное письмо открывается правильно, без ошибок, когда оно открывается на той же вкладке браузера (без target=_blank)
Я ценю любые предлагаемые решения, которые помогут мне решить эту проблему.
Комментарии:
1. Это связано с тем, что прямая ссылка на электронное письмо в OWA сначала не прошла на экран входа в OWA, чтобы подтвердить, что вы не пытаетесь делать именно то, что пытаетесь сделать… Он ожидает, что вы сначала перейдете на страницу входа в систему, а затем щелкните электронное письмо… Не пытайтесь открыть электронное письмо и обойти метод входа… Данные сеанса не будут сгенерированы.
2. Большое спасибо за ответ, Крис. Я получаю эту ошибку даже после аутентификации в ADFS / Office 365. Я должен упомянуть, что электронное письмо откроется по прямой ссылке на пустой вкладке браузера, но не по ссылке из моего веб-приложения.
3. Не могли бы вы написать небольшой скрипт, который принимает URL-адрес электронной почты в качестве переменной. Вы открываете свой скрипт на новой вкладке, а затем (используя переданный URL-адрес в качестве переменной) перенаправляете на URL-адрес?
4. PHP (myStub.php ):
<?php header('Location:'.$_GET['URL']); exit(); ?>
— ваше приложение открываетсяmyStub.php?URL=your-OWA-address
в _blank
Ответ №1:
Я решил проблему, изменив часть строки запроса в URL.
Из: https://outlook.office365.com/owa/#viewmodel=ReadMessageItemamp;ItemID=xxxxxxx
Кому: https://outlook.office365.com/owa/#ItemID=xxxxxxx
Теперь прямая ссылка будет открываться в любом фрейме, если вы прошли проверку подлинности, без каких-либо ошибок перекрестного происхождения.