Google日历邀请电子邮件会在原始事件发生更改后发送 后更新... Google如何实现这一目标?是否有一般技术可供任何人这样做?或者这是唯一可能的,因为Google拥有gMail / gCalendar和两个系统都集成在SMTP之外的幕后?
我的第一个猜测是他们使用了iframe或打开电子邮件时加载的图片,但是检查gMail页面的来源并没有显示任何迹象。
答案 0 :(得分:3)
检查来源除了在包括ajax在内的所有动态操作后您在页面中看到的内容的标记外,别无其他任何内容。
要查看实际来源,您需要访问view-source:url
。
该信息在运行时通过JavaScript代码自动更新。
在图片中,您选中了 Inspect 元素,该元素显示了实时视图的代码,因此您看到了更新的内容。
它由JavaScript DOM和文本操作完成。
要验证这一点,
view-source:
。所以,它看起来像view-source:https://url
ctrl+f
或相应的键find
。<div id=":8hg"
。{/ li>的0 results
醇>
view-source
加载文件的来源,没有任何ajax或JavaScript操作。
来源中不存在div
。所以,我们可以理解它是动态完成的。
详细检查时,
在来源中,我们可以看到存储在https://www.google.com/calendar/event?action\u003dVIEW\u0026eid\u003db.....
中的链接array
。
通过此链接,即可获取内容。
(为了隐私,我把一些文字涂黑了。)
根据网址的返回情况,邮件内容会更新。
要验证这一点,
在邮件中,您可以看到此邀请已过期
但在view-source:
页面中,搜索此邀请已过期,它将返回0 results
。
因此,可以确保通过Gmail对G Calendar API的API调用来获取日历详细信息。
答案 1 :(得分:0)
我想知道是否在发送电子邮件时,他们会在某个网址上创建一个图片,然后如果它发生了变化,就会删除它,然后在电子邮件中就会有类似的内容
<div id="updated"></div>
<img src="asdfawe" onerror="document.getElementById('updated').innerhtml="some text""/>
虽然我不确定他们是否不能使用onerror属性(b / c email + js =坏主意)。唯一的另一种方法是使用alt
属性并使用一些css技巧,但我不知道这将如何导致检查代码。