Встречается на собеседованиях • сегодня

Как передать информацию из одной вкладки в другую через iframe

Для передачи данных между вкладками через iframe можно использовать:

  1. postMessage API - основной способ безопасной кросс-доменной коммуникации:
javascript
// В родительском окне
iframe.contentWindow.postMessage('Данные', 'https://домен-iframe.com');

// В iframe
window.addEventListener('message', (event) => {
  if (event.origin !== 'https://родительский-домен.com') return;
  console.log(event.data); // Полученные данные
});
  1. SharedWorker (если вкладки одного происхождения) - позволяет обмениваться данными между любыми вкладками.

  2. LocalStorage/SessionStorage с событием storage (только для одного домена):

javascript
window.addEventListener('storage', (event) => {
  if (event.key === 'myData') {
    console.log(event.newValue);
  }
});

Важные моменты:

  • Всегда проверяйте event.origin в message для безопасности
  • Для кросс-доменного обмена требуется CORS заголовки
  • postMessage - самый надежный и безопасный способ
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы