может быть немного запоздалым, так как все остальные ответы старше :-), но ... вот мое решение. Протестировано в реальных FF, Chrome и Safari 5.0.
css:
iframe {border:0; overflow:hidden;}
javascript:
$(document).ready(function(){
$("iframe").load( function () {
var c = (this.contentWindow || this.contentDocument);
if (c.document) d = c.document;
var ih = $(d).outerHeight();
var iw = $(d).outerWidth();
$(this).css({
height: ih,
width: iw
});
});
});
Надеюсь, это поможет любому.
Я воссоздал полный проект из своей конфигурации и «волшебным образом» начал работать. Поэтому я могу только предположить, что происходит:
Каждая зона доступности имеет частную и общедоступную подсети. Согласно Документации AWS для шлюзов NAT необходимо создать шлюз NAT в каждом из них, но у меня был настроен только один шлюз NAT в зоне А.
Я изменил конфигурацию своих функций Lambda, чтобы они размещались только в одном AZ (я не хочу иметь полное резервирование, пока проект не запущен), и теперь шлюз NAT находится в том же самом.
Простой график:
Client --[AWS]--> Lambda --[Private Subnet]--> NAT --[Public Subnet]--> API Gateway
Мне все еще интересно, можно ли достичь шлюза API, используя конечную точку VPC вместо шлюза API, но сейчас я останусь с этой конфигурацией.