Ошибка при просмотре документа с onclick ссылки URL документа

#javascript #html #reactjs

#javascript #HTML #reactjs

Вопрос:

  • Я пытаюсь открыть и просмотреть документ в приложении react с помощью URL-ссылки
  • При нажатии на URL-ссылку в консоли постоянно отображается одна и та же ошибка

    Заблокировано выполнение скрипта в «, поскольку фрейм документа изолирован и разрешение «разрешить-скрипты» не установлено.

  • Тем не менее, документ отображается в пользовательском интерфейсе
  • Я исследовал ошибку и отобразил результат, связанный с проблемами развертывания
  • Поражен идеей о том, в какой части приложения произошла ошибка
  • можете ли вы, ребята, помочь мне решить проблему своими предложениями
  • Весь код доступен по ссылке stackbiltz:https://stackblitz.com/edit/react-8dv5yl?file=index.js -предоставление фрагмента кода ниже:

App.js

 export function App(props) {

  return (
    <div>
      { sportsProfile(user) }
    </div>
  );
}
  

sportsProfile.js

 Java link: <a href="https://docs.google.com/document/d/1axZ-C9TqnNJy_iFQBGQ5G1ZzT54enCGWGHHAV3BcVWQ/edit">https://docs.google.com/document/d/1axZ-C9TqnNJy_iFQBGQ5G1ZzT54enCGWGHHAV3BcVWQ/edit</a>
  

Ответ №1:

Ваше приложение запускается в Iframe на веб-сайте Stackblitz.

Документ Google не разрешает другой веб-сайт, который включает себя в Iframe. Таким образом , docs.google.com отклоняет ваш запрос или блокирует выполнение вами кода javascript на странице Google, поскольку ваша страница находится в Iframe в режиме Stackblitz view.

Запустите свой код в вашем локальном, который был бы хорош, если бы не содержался ни в одном Iframe, или вы можете изменить свою ссылку на другие URL, которые позволяют вам включать ее в Iframe.

Это защищает пользователя от XSS, более подробную информацию о Iframe, пожалуйста, смотритеhttps://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/iframe

Комментарии:

1. @Simon.Lay… Спасибо за ваш ответ… Я запустился на локальном компьютере с node.js сервер. Тем не менее, я сталкиваюсь с той же ошибкой … можете ли вы предложить, нужны ли нам какие-либо свойства в заголовках ответа для неблокирующего выполнения URL

2. @tamilcool Итак, вы используете Iframe для размещения другого веб-сайта? Ах, в качестве информации об ошибке вы можете установить для «песочницы» вашего Iframe значение «разрешить-скрипты», вот, наконец, пример w3schools.com/tags/att_iframe_sandbox.asp . Кстати, другие веб-сайты могут решать, можете ли вы содержать его в своем Iframe, это легко сделать.

3. @Simon.Lay… Спасибо за ваш ответ… Я изменю и выполню код с учетом ваших предложений и сообщу вам о результатах

4. @Simon.Lay … После установки разрешения allow-scripts и modals ошибка отображается как «Заблокированный iframe с исходным кодом «null» при доступе к фрейму с перекрестным исходным кодом»….. Я планирую использовать тег <a>, предоставляющий ссылку для просмотра документа ….. можете ли вы сообщить мне, можно ли этого достичь с помощью тега <a>

5. @tamilcool Нет, это не может быть достигнуто с помощью тега <a> . Это проблема с перекрестным происхождением, которую мы не можем решить, только Google может установить, какой домен имеет одно и то же происхождение.