В моем приложении. NET MVC у меня есть страница, содержащая iframe, который использует тот же домен. В частности, атрибут src
iframe - это просто другое действие на том же контроллере MVC, который обслуживает страницу.
На этой странице я включил небольшую функцию с именем resize
, чтобы соответствующим образом отрегулировать высоту фрейма. Я прикрепляю это так:
const iframe = document.getElementById("my-iframe");
iframe.onload = function() {
iframe.contentWindow.onresize = resize;
}
Все это работает нормально, за исключением следующего. Иногда, хотя и не всегда, если я ухожу с этой страницы, а затем возвращаюсь к ней с помощью кнопки назад Chrome, я получаю сообщение об ошибке CORS:
Uncaught DOMException: Blocked a frame with origin "http://localhost" from accessing a cross-origin frame. at HTMLIframeElement.iframe.onload (http://localhost/.../.../123:865:47)
Кажется, что, хотя оба кадра выпуск из localhost
, номер порта, который каким-то образом добавляется здесь, противоречит политике CORS. (Для ясности, разметка фактически нигде не указывает номер порта.)
Я понятия не имею, почему это происходит только периодически, или только когда я использую кнопку возврата, или что с этим делать. Спасибо за любую помощь!