我正在编写此代码,以便当有人想使用Gmail发送电子邮件时,他们可以使用链接模板并准备自动电子邮件,因此功能如下:
var sendGmail = function(opts){
var str = 'http://mail.google.com/mail/?view=cm&fs=1'+
'&to=' + opts.to +
'&su=' + opts.subject +
'&body=' + opts.message.replace(/\n/g,'%0A') +
'&ui=1';
location.href = str;
}
sendGmail({
to: 'somename@email.com',
subject: 'Invice number: '+value,
message: 'Poštovani, \n'+
' \n'+
'Dostavljamo Vam račun za isporučene usluge \n'+
'Račun je automatski generisan obradom podataka i važeći je bez pečata i potpisa \n'+
' \n'+
'*račun u papirnom obliku šaljemo Vam na zahtev \n'+
' \n'+
'Ovo je link na kome mozete racun skinuti u PDF formatu: http://agroagro.com/netRacuni/tcpdf/examples/pdf.php?kljuc='+data+' \n' +
' \n'+
' \n'+
' \n'+
'Srdačan pozdrav i hvala na ukazanom poverenju. \n'
});
此代码适用于纯文本电子邮件,但我如何将HTML发送到gmail以创建基于HTML的电子邮件模板?
这样可以吗?
我试过了:
sendGmail({
to: 'somename@email.com',
subject: 'Invice number: '+value,
message: '<h1>Poštovani </h1> etc....
但这不起作用。我如何将HTML代码发送到gmail以将其呈现为HTML而不是纯文本?
答案 0 :(得分:1)
基本上,答案没有
规则1:安全性
漏洞解释: 出于安全原因,URL中的所有html都将被删除。 Google会考虑安全性,因此将删除html实体。
删除html实体的php中的函数是..
用htmlspecialchars($字符串);
我确信gmail会做类似这个功能的事情。
如果您使用包含以下代码的网址发送邮件,则该网站基本上遭到黑客攻击或被黑客攻击......
<script>
alert('You have been hacked');
</script>
此代码可以像......一样运行。
example.com/?email=<script>alert('hacked');</script>
或替换“&lt;”和“&gt;”使用html实体代码
这就是不可能的原因。
您最好的选择是使用服务器端语言。比如php将你的邮件发送为html。 mail()函数将是一个很好的起点。参考:http://php.net/manual/en/function.mail.php 请记住更改标题类型以将电子邮件呈现为html。