Как просмотреть веб-страницу, включающую JQuery с iframe в Google Chrome - PullRequest
2 голосов
/ 22 апреля 2020

У нас есть интр anet веб-сайт, назовем его https://www.myintranetsite.com. Обратите внимание, что я не могу получить доступ к его исходному коду.

Я хотел бы использовать его на другой веб-странице в IFrame, поэтому я создаю очень простую c HTML страницу, например:

<html><body>
    <div>
        <iframe id="myIframe" width="100%" height="1200px" src="https://www.myintranetsite.com/"></iframe>
    </div>
</body></html>

Когда я открываю * Страница 1058 * с Microsoft Edge, она работает, однако Google Chrome не работает, и она показывает ошибку ниже:

enter image description here

Когда я делаю F12 в браузере сообщение об ошибке, которое я вижу в консоли, отображается ниже:

Uncaught ReferenceError: $ не определено при входе в систему? isajax = true: 19

As Я понимаю, JQuery используется на myintranetsite.com и Chrome по какой-то причине не загружает его, вероятно, связано с безопасностью ... Версия Chrome: 81.0.4044.122 ( 64bit)

Как я могу решить эту проблему? Я пробовал это, но без помощи:

  • очистка кэша ,
  • добавление myintranetsite к доверенным сайтам в inte rnet опции ,
  • очистка SSL Stage ,
  • отключение куки в chrome

Я проверил это, но это также не помогло: jQuery / iframe не работает в Chrome

Любая помощь или совет будут оценены.

Ответы [ 2 ]

0 голосов
/ 08 мая 2020

Ваше понимание того, что это предотвращено мерами безопасности, является правильным, в основном вы получаете ошибку jQuery, потому что jQuery будет загружаться внутренней страницей, но, поскольку внутренняя страница не загружена, она не загружается jQuery или. Вам нужно будет создать несколько прокси-страниц, давайте рассмотрим шаги:

Шаг 1

Создайте отдельную страницу, назовем ее myintranetproxy. Я предполагаю, что местоположение этой страницы, которую вы создаете, - / myintranetproxy, поэтому, если у вас разные маршруты, не стесняйтесь вносить необходимые изменения.

Шаг 2

Убедитесь, что myintranetproxy показывает текст или что-то на этом этапе, например «Hello World», только для того, чтобы убедиться, что он загружен на следующем шаге.

Шаг 3

Загрузить myintranetproxy:

<html><body>
    <div>
        <iframe id="myIframe" width="100%" height="1200px" src="/myintranetproxy"></iframe>
    </div>
</body></html>

теперь вы должны увидеть ваш временный контент внутри iframe.

Шаг 4

Изменить myintranetproxy, теперь он должен отправить запрос GET на https://www.myintranetsite.com/ и как только ответ придет, напишите это HTML как есть вместо вашего «Hello World»

Шаг 5

Убедитесь, что вы изменили любой URL в полученном ответе на абсолютный URL страницы. Это повлияет на теги iframe, script, link, img. Вы можете реализовать это или использовать для этой цели анализатор HTML.

0 голосов
/ 08 мая 2020

Наиболее вероятной причиной является то, что вы как-то смешиваете HTTP и HTTPS. Chrome на самом деле это не нравится, убедитесь, что ваша родительская страница и страница в iframe используют один и тот же протокол

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...