Подтвердить что ты не робот

Карты Google внутри iframe не загружаются

У меня возникла странная проблема, и я не знаю, в чем проблема. Следующий код jQuery - это упрощенная версия того, чего я хочу достичь:

var iframe = $('<iframe />');
iframe.prop('src', 'https://maps.google.com/maps?q=London&hl=en&sll=37.0625,-95.677068&sspn=46.677964,93.076172&t=h&hnear=London,+United+Kingdom&z=10');
iframe.appendTo($('body')); 

// When the iframe loads:
iframe.load(function() {
    alert(1);
});

Карта никогда не загружается, и событие load() никогда не запускается. Chrome сообщает о следующей ошибке:

Refused to display 'https://maps.google.com/maps?q=London&hl=en&sll=37.0625,-95.677068&sspn=46.677964,93.076172&t=h&hnear=London,+United+Kingdom&z=10' in a frame because it set 'X-Frame-Options' to 'SAMEORIGIN'.

Как обходить это?

Вот демон jsFiddle.

4b9b3361

Ответ 1

Приложение &output=embed в конец URL-адреса устраняет проблему.

Ответ 2

По состоянию на 2014 год опция &output=embed больше не работает. Google предлагает вам перейти на Google Maps Embed API. Вот краткое начало.

В основном, новая ссылка iframe:

https://www.google.com/maps/embed/v1/place?key={BROWSER_KEY}&q={YOUR_ADDRESS_ENCODED}

Не забудьте включить API конверсий Google Maps в консоли API.

ps проверял работу в тот момент, когда я пишу этот ответ