Member 9326644 Ответов: 3

Html тег IFrame не интерпретируется в теле письма


Мне нужно отправить html-файл(который содержит iframe) внутри тела электронной почты.Html - файл прекрасно работает в браузере и воспроизводит видео.Но когда я отправляю его внутри тела электронной почты,тег iframe не интерпретируется, поэтому не отображается в теле.
Это html-файл.
Aman
<iframe height="390" frameborder="0" width="640"
src="http://www.youtube.com/embed/Sf5T5KjMpJU?wmode=transparent"
title="YouTube video player"></iframe>


В теле письма жирным шрифтом выделено только слово "Аман".Это код C#.

StreamReader reader = File.OpenText("C:\\Users\\Girish\\Desktop\\amrit\\Jeff_Project\\indeex.html");
   string getemail = textbox_email.Text;
   System.Net.Mail.MailMessage message = new System.Net.Mail.MailMessage();
   message.To.Add(getemail);
   message.Subject = "Hello";
   message.From = new System.Net.Mail.MailAddress("sendingemail");
   //message.Body = "This is message body";
   message.IsBodyHtml = true;
   message.Body = reader.ReadToEnd();
   System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient("smtp.gmail.com");
   smtp.Credentials = new System.Net.NetworkCredential("sendingemail", "password");
   smtp.EnableSsl = true;
   smtp.Send(message);
   Response.Write("Sent");

Почему iframe не интерпретируется?Я что-нибудь упустил?

Пожалуйста, помогите и предоставьте решения.

Заранее спасибо.

3 Ответов

Рейтинг:
24

Ed Nutting

Привет,

Если вы просматриваете электронную почту в любом приличном почтовом клиенте, то он заблокирует использование iFrames, если только suer специально не разрешит это. Отправка HTML-писем (особенно с JavaScript и iFrames) - очень плохая идея. 2 причины: 1) это недружелюбно по отношению к пользователям и обычное дело для фишинговых мошенников или вирусов. 2) из-за 1 большинство почтовых клиентов блокируют JavaScript и iFrames и т. д., поэтому ваша электронная почта почти никогда не будет отображаться должным образом.

Предположим, вы пытаетесь опубликовать свое видео или что-то еще: гораздо лучше было бы отправить снимок (однокадровое изображение) веб-страницы или видео, его описание и текстовую ссылку (не html-кликабельную ссылку) на страницу/видео. Это более дружелюбно к пользователям, выглядит менее вредоносным и будет правильно отображаться в почтовых клиентах.

Надеюсь, это поможет,
Эд


Maciej Los

Согласитесь, мои 5!

Ed Nutting

Спасибо! :)

fjdiewornncalwe

Мой 5.

Espen Harlinn

Хороший момент :-D

Ed Nutting

Спасибо :)

Рейтинг:
12

fjdiewornncalwe

Ваш ответ заключается в том, что использование iframe в сообщении электронной почты не очень хорошо поддерживается.
Видеть этот[^] в качестве ссылки.

Это также не самый правильный способ встраивания видео youtube в электронную почту. Если вы заходите на youtube и делитесь видео по электронной почте с самим собой, вы можете проверить html-содержимое этого письма, чтобы узнать, как правильно вставлять видео.

Статическое кликабельное изображение, которое перенаправит пользователя обратно на youtube.

<a href="http://www.youtube.com/watch?v=Bk_6r-b3kqU&feature=em-share_video_user">
   style="text-decoration:none;display:block" 
   class="nonplayable" 
   target="_blank">
   <img src="http://i3.ytimg.com/vi/Bk_6r-b3kqU/mqdefault.jpg" height="274" width="498">
</img></a>


Воспроизводимое видео(требуется flash player)
<embed width="640" height="385" base="https://www.youtube.com/v/" wmode="opaque" id="swfContainer0" type="application/x-shockwave-flash" src="https://www.youtube.com/v/Bk_6r-b3kqU?border=0&autoplay=1&client=ytapi-google-gmail&version=3&start=0">
</embed>


Maciej Los

Интересная идея, +5!

Ed Nutting

Мой голос 4: Не уверен, что мне полностью нравится идея скрыть ссылку вокруг изображения, но, по крайней мере, вы рекомендуете использовать стандарт YouTube (я не думаю, что мы должны отправлять HTML - письма на самом деле-они просто слишком небезопасны в данный момент!). Я бы, конечно, не рекомендовал встраивать Flash Player (хотя Flash сейчас умирает, так что этот бит будет сломан в течение следующих нескольких лет, я думаю). Пожалуйста, смотрите мое решение :)

Эд

fjdiewornncalwe

Я согласен, но, к сожалению, почти все, что мы можем предложить, может быть мутировано во что-то вредоносное. Ваше здоровье и спасибо.

Espen Harlinn

5 ЕД!

fjdiewornncalwe

Спасибо Эспен

Рейтинг:
0

Ashraff Ali Wahab

Ваш код кажется прекрасным,вероятно, просмотрщик HTML в почте не в состоянии поддерживать тег iframe. Вместо этого используйте тег объекта.

http://www.felgall.com/noiframe.htm[^]


Ed Nutting

Мой голос 3: Никогда не вставляйте теги объектов, апплеты, элементы управления active-x, JavaScript или iFrames в электронную почту - это слишком часто вредоносный контент, и если это не так, вам следует избегать классификации как вредоносного. Пожалуйста, посмотрите мое решение.

Эд

Edit: кроме того, это решение вряд ли будет работать через почтовые клиенты - речь идет о IE6 & 7! очень устарело... Многие люди теперь используют веб - почтовые клиенты, такие как gmail, который, как я надеюсь, блокирует все типы встроенного контента, такого как этот - он, безусловно, блокирует много встроенных файлов/изображений, что хорошо-защищает пользователя от вредоносного контента. Кроме того, вам придется начать обслуживать все браузеры и почтовые клиенты в вашем одном электронном письме - гораздо лучше упростить проблему и сделать ее более дружелюбной для пользователей, отправив описание, изображение и url-адрес, чтобы перейти, если они доверяют вашей электронной почте.

fjdiewornncalwe

Абсолютно согласен с тобой, Эд. Мой ответ содержит метод, который youtube реализует с помощью своей функции share.

Ed Nutting

Спасибо :)

kirankumar085

тест

kirankumar085

если мы используем объектный тег, то он также не отображался в outlook 2007