Одним из функциональных требований является наличие подключения OAuth к облачным учетным записям (например, OneDrive, Dropbox). Когда пользователь нажимает кнопку (например, «Подключиться к OneDrive»), мы вызываем «window.open» в коде JavaScript (ES6) с URL-адресом oauth.
Проблема, которая Я сталкиваюсь с тем, что если пользователь не вводит никаких учетных данных и не закрывает окно, а затем снова пытается подключить облачную учетную запись (нажимая «Подключить OneDrive»), я получаю исключение (Ошибка: не удалось завершить операцию из-за ошибки 8150002e.).
Мне не удалось найти в Интернете никакой информации о коде ошибки «8150002e».
Это исключение не всегда присутствует, но случается примерно в 50 % случаев.
Будем благодарны за любую помощь.< /p>
что я пробовал:
- меняя параметр windowName каждый раз window.open вызывается
- имеющим глобальную переменную для объекта окна.
- Использование _blank параметр для открытия нового окна каждый раз.
- После 5-6 раз появляется ошибка, после 5-6 раз ошибка исчезает и начинается окно авторизации появляется, как и раньше.
- Открытие простой статической HTML-страницы в «window.open», чтобы проверить, связана ли проблема с HTML-страницей. Вышеуказанная проблема все еще существует.
- Программный сброс System.Windows.Forms.WebBrowser.
- Удаление файлов cookie.
- Вместо вызова window.open из кода JavaScript мы вызываем код VSTO, чтобы открыть окно браузера, ошибка по-прежнему присутствует.
https://github.com/vinay-x/SampleAddin
Код, связанный с проблемой:
- SDXOLForm1.cs (переводит браузер к файлу SamplePage.HTML, размещенному на локальном хосте:8001)
SamplePage.HTML (содержит кнопку, вызывающую функцию window.open).
Подробнее здесь: https://stackoverflow.com/questions/501 ... r-8150002e