我正在为电子邮件营销跟踪创建自己的电子邮件跟踪系统.我已经能够使用http referrer确定他们正在使用的每个人的电子邮件客户端,但由于某种原因,GMAIL根本不发送HTTP_REFERRER!
所以我试图找到另一种方法来识别gmail何时从我的服务器请求透明图像.我得到以下标题print_r($_SERVER);:
DOCUMENT_ROOT = /usr/local/apache/htdocs
GATEWAY_INTERFACE = CGI/1.1
HTTP_ACCEPT = */*
HTTP_ACCEPT_CHARSET = ISO-8859-1,utf-8;q=0.7,*;q=0.3
HTTP_ACCEPT_ENCODING = gzip,deflate,sdch
HTTP_ACCEPT_LANGUAGE = en-GB,en-US;q=0.8,en;q=0.6
HTTP_CONNECTION = keep-alive
HTTP_COOKIE = __utmz=156230011.1290976484.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); __utma=156230011.422791272.1290976484.1293034866.1293050468.7
HTTP_HOST = xx.xxx.xx.xxx
HTTP_USER_AGENT = Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.10 (KHTML, like Gecko) Chrome/8.0.552.237 Safari/534.10
PATH = /bin:/usr/bin
QUERY_STRING = i=MTA=
REDIRECT_STATUS = 200
REMOTE_ADDR = xx.xxx.xx.xxx
REMOTE_PORT = 61296
REQUEST_METHOD = GET
Run Code Online (Sandbox Code Playgroud)
该清单中有什么用途吗?或者我还能做些什么来实际获得http推荐人,如果没有其他ESP如何设法查找是否使用gmail查看电子邮件?
顺便说一下,如果我们能够阻止这是否符合道德规范,我很感激,因为许多ESP已经这样做了,我只是不想为他们的服务买单而我想在内部做.
感谢所有实施建议.
我想我会更新这个问题,并根据赏金更清楚.
我想知道用户何时在发送到GMail收件箱时打开我的电子邮件.假设,我有通常的透明图像跟踪,用户不会阻止图像.
我想用单个请求和请求透明图像时获得的标题详细信息来执行此操作.
我最近一直在为我的客户开发一份通讯.我怎么似乎无法找到关于css和html在主要邮件客户端中可以安全使用的好信息.
我想也许这里有人有知识,我们可以创建一些在主要邮件客户端工作的东西列表.
这是我从广告系列监视器中借用的热门邮件客户端列表.(如果我忘记了某事请告诉我)
Microsoft Outlook
Apple Mail
Hotmail
Yahoo! Mail
Gmail
Run Code Online (Sandbox Code Playgroud)
问题是这些主流浏览器中有哪些标签,属性,特殊怪癖以及如何轻松避免这些问题.
谢谢您的帮助,
我正在尝试使用PHPMailer发送gmail电子邮件.我跟着这篇文章
为此,我设置了如下所示的函数:
function sendEmail($email, $name) {
$mail = new PHPMailer();
$mail->IsSMTP(); // send via SMTP
//IsSMTP(); // send via SMTP I commented it cos it gives an error
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->Username = 'email@gmail.com'; // Changed my email
$mail->Password = "password";// Changed my password
$mail->From = 'email@gmail.com';
$mail->FromName = 'FROM NAME';
$mail->AddAddress($email);
$mail->IsHTML(true); // send as HTML
$mail->Subject = "Subject";
$mail->Body = "Body";
if (!$mail->Send()) {
return false;
} else {
return true;
} …Run Code Online (Sandbox Code Playgroud) 我有一个嵌入式HTML电子邮件,我正在使用base64编码图像.通过chrome访问时,图像不会显示在Gmail中.但通过邮件客户端(Mac上的Mail应用程序)访问相同的邮件时,它可以正常工作.我已正确设置标题.任何的想法?
我的代码
<html>
<body>Hi
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAREAAAALCAYAAABYrrnHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABANpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ1dWlkOjVEMjA4OTI0OTNCRkRCMTE5MTRBODU5MEQzMTUwOEM4IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjVGMjU1MzZBQUVGQjExRTc5NUQyQTc1MzA0RERGMTVGIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjVGMjU1MzY5QUVGQjExRTc5NUQyQTc1MzA0RERGMTVGIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIElsbHVzdHJhdG9yIENDIDIwMTcgKE1hY2ludG9zaCkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0idXVpZDpiNDQ5NzVjYy00YmI1LTRmNzAtODRiZi0zMGU2NjFkYmY3ZDMiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6ZDc1MTVmZDQtMjkzZS00ZWI5LWFiMjQtOTMzYzRkZjNmOTY4Ii8+IDxkYzp0aXRsZT4gPHJkZjpBbHQ+IDxyZGY6bGkgeG1sOmxhbmc9IngtZGVmYXVsdCI+bXRrYV9hY3RpdmF0aW9uX2NhcmQ8L3JkZjpsaT4gPC9yZGY6QWx0PiA8L2RjOnRpdGxlPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pr6AOtYAAABESURBVHja7NZBDQAwCARB2tS/m6qoKIoGvswkGNjHhQgAAACAeVbdkwHoOnVXBqD9iWSmCkDblgAwIoARAYwIMNAXYACy9wSMWMVdzAAAAABJRU5ErkJggg==" width="273" height="11" alt="">
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
头
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Run Code Online (Sandbox Code Playgroud) 通过Gmail REST API发送草稿时,发件人无法在新的Gmail用户界面中打开"已发邮件"文件夹中的邮件.您收到错误消息"The conversation that you requested could not be loaded.".
接收方的消息可以毫无问题地打开,无论是否有新UI.
恢复旧的/经典Gmail用户界面允许发件人打开已发送的邮件.
重现步骤:
GET https://www.googleapis.com/gmail/v1/users/me/draftsPOST https://www.googleapis.com/gmail/v1/users/me/drafts/send正文发送草稿{"id": "<draftId>"}UPDATE
当损坏的已发送电子邮件收到回复后,它似乎已"修复",发件人现在可以从新的Gmail用户界面打开已发送的电子邮件.这似乎表明REST API缺少一些线程通过其他方式更新后得到修复的东西?
尝试打开已损坏的已发送邮件时,浏览器控制台中的错误消息:
Error: Ppa No message loaded when we received the DETAILED_CONVERSATION_MESSAGES_LOADED event.
我希望能够使用键盘快捷键用谷歌推荐的更正替换谷歌文档中拼写错误的单词,而不必将鼠标悬停在单词上,右键单击它,然后选择更正的单词。
有没有办法做到这一点?(我在 Mac 上工作)。
我正在尝试.ics通过 SendGrid (从节点服务器)发送日历邀请,以便它在 Outlook 或 Gmail 等客户端中呈现为实际邀请(带有接受/拒绝按钮),而不仅仅是作为附件文件。
我花了几天时间研究这个问题(数十个 Stackoverflow 问题、RFC -5545、RFC-2446、iCalendar规范摘录、Sendgrid 的 GitHub 问题线程:1、2、3 、 SendGrid文档、源等)。
然而,似乎没有答案(或者我错过了什么?)。
到目前为止我发现Content-Type附件在这里非常重要,尤其是method=REQUEST部分。甚至文件中属性的顺序也会有所不同。
尽管这里有很多关于 SO 的问题,但由于某种原因,大多数问题仍然没有得到解答。
这是我设置attachment对象的方法:
const SendGrid = require("@sendgrid/mail");
const attachment = {
filename: 'invite.ics',
name: 'invite.ics',
content: Buffer.from(data).toString('base64'),
disposition: 'attachment',
contentId: uuid(),
type: 'application/ics'
};
SendGrid.send({
attachments: [attachment],
templateId,
from: {
email: config.emailSender,
name: config.emailName,
},
to: user.email,
dynamicTemplateData: {
...rest,
user,
}, …Run Code Online (Sandbox Code Playgroud) Gmail在您点击邮件时使用#来区分页面(+ Ajax操作). http://mail.google.com/mail/#inbox/1238e709e37a1394
我发现: Google使用#而不是搜索?在URL中.为什么?
在FF或Chrome中,您可以使用前进和后退而不刷新这些网址:http : //X.com/MyPage.aspx#1 http://X.com/MyPage.aspx#2 http://X.com/ MyPage.aspx#3
但是在IE上页面刷新并且在进行后退操作时它不计算#之后的参数.
Gmail如何让魔术发生?
是否可以通过gmail smtp在核心php中发送邮件而无需使用任何外部类?
Youtrack允许通过第三方SMTP服务器发送电子邮件.字段如下:
您能举例说明Gmail或Google应用配置吗?
gmail ×10
php ×3
email ×2
html ×2
outlook ×2
smtp ×2
ajax ×1
base64 ×1
css ×1
gmail-api ×1
google-apps ×1
google-docs ×1
html-email ×1
http ×1
http-headers ×1
http-referer ×1
icalendar ×1
sendgrid ×1
shortcut ×1
spelling ×1
youtrack ×1