2013-05-17 2 views
3

Backstory: Я пытаюсь использовать Виджет Newsletter от SendGrid, но в настоящее время они не предлагают его с использованием SSL. Поэтому любые запросы к https: // просто перенаправляются на http: //, а затем браузеры жалуются на небезопасный контент на моем защищенном сайте.Почему файл_get_contents() Javascript Output не выполняется?

Хорошо хорошо, так что я реализовать что-то подобное в PHP:

$output = file_get_contents('http://sendgrid.com/newsletter/getSubscriptionWidget?p=xxx'); 

И тогда, на мой взгляд есть это:

<script type="text/javascript"> 
    <?php echo($output); ?> 
</script> 

Просмотр источник этой страницы после выполнения показывает, что она тянет код виджета javascript в порядке. BUT, не работает. «Не работает», я имею в виду, что код javascript никогда не выполняется.

Если я загрузить его (в не-HTTPS среды разработки) с помощью тега сценария, как:

<script type="text/javascript" src="http://sendgrid.com/newsletter/getSubscriptionWidget?p=xxx"> 

Тогда он работает просто отлично!

TL; DR; Что заставило бы javascript выполнять штраф при загрузке под атрибутом src атрибута и не работал, если его эхо в качестве содержимого внутри script теги?

P.S. Вы можете просмотреть источник виджетов SendGrid here.

+0

Посмотрите на сгенерированный исходный код вашей страницы – SLaks

+0

Я сделал. Это то, что выдает: http://pastebin.com/PKXwf002. Вы можете видеть, что Javascript отображается между тегами **

Смежные вопросы