Привязка динамического URL к iframe в Knockout js

У меня возникла проблема при привязке атрибута src к iframe во время выполнения.

iframe data-bind = "visible: $root.someBoolProp(), attr:{src:$root.someProp}" /iframe

Когда я делаю console.info ($ root.someProp), он регистрирует правильный URL. (https: // dev-платеж ....)

Я не уверен, что после разрыва представления он выдает ошибку ниже с добавлением URL-адрес localhost к фактическому URL-адресу iframe.

Сообщение об ошибке:

Отказался отображать «http: // localhost: 62489 / en / hoapayment /% 22 https://dev-payment-ui.azurewebsites.net/something%22» во фрейме, потому что он установил для «X-Frame-Options» значение «deny».

Может кто-нибудь дайте мне знать, как я могу решить эту проблему.

Может быть, someProp содержит URL без указанного протокола? см. этот ответ.

OfirD 07.10.2018 09:54
someProp также поддерживает протокол. Когда я использую console.info(), я вижу полный URL-адрес вместе с протоколом.
Madhu 08.10.2018 14:49

Это зависит от того, где вы выполняете console.info () и где вы его фактически используете. Похоже, что URL-адрес устанавливается как относительный (URL-адрес вашего веб-сайта + URL-адрес из root.someProp). Также попробуйте $ root.someProp () со скобками в конце.

Bivo Kasaju 08.10.2018 22:09

Еще одна вещь, которую я хотел бы добавить сюда: когда я пытаюсь передать URL-адрес непосредственно в iframe SRC, я могу видеть загрузку страницы в iframe. console.info('Payment URL: ',paymentUrl); frame.attr('src', 'https://dev-payment-ui.azurewebsites.net....'); ... Но когда я передаю переменную в SRC, я получаю указанную выше ошибку console.info('Payment URL: ',paymentUrl); frame.attr('src', paymentUrl);

Madhu 09.10.2018 19:10
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
4
138
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Проблема заключалась в формате URL. URL-адрес, который входит в состав paymentUrl, похож на "" https: // dev-платеж ... "". Поэтому мне нужно удалить лишний ".

Спасибо за ответы.

Другие вопросы по теме