今天看了一篇文章,觉得很有趣也很实用,估计有的同学已经会了,但是我还是想分享出来,这篇文章主要讲述了一个通用的方法,用另外一种思路,来判断用户是否阅读了文章链接或者打开了你群发的邮件。
先从 markdown 的图片谈起
以下一段标记,我们在 markdown 用于展示图片:
![alt text](https://yoursite.com/some_image)
格式化成HTML就会以以下方式展示图片
<img src="https://yoursite.com/some_image" alt="alt text" />
你可能注意到了,图片地址是个不带后缀名的图片(jpg,png 等),但是丝毫不影响请求服务器对应的链接。
当网页加载图片时
上面谈过,浏览器打开链接时,如果链接里含有图片,就会请求对应图片的地址,比如本篇文章的这个图片链接——https://yoursite.com/some_image
如果链接请求成功,就会将图片展示给用户,这时我们需要针对这个特殊的图片链接请求,进行特殊的处理,返回指定的图片资源,如下段 Node.js 代码所示(你也可以用其他服务端语言):
app.get("/some_image", (req, res) => {
res.sendFile('some_image.jpg')
})
你可能会问,为啥这么大费周章,直接写图片链接不得了,还非要写服务端代码,有何意义呢,因为是服务端操作,你可以做比较多的事情,你可以记录用户的访问行为,图片加载成功了,就表示用户看过此链接的内容,你可以定义自己的一些逻辑,如下段代码所示:
app.get("/some_image", (req, res) => {
notifyUser() //You can implement it the way you want
res.sendFile('some_image.jpg')
})
是不是很简单和实用呢,日后,你可以在网页里隐藏一张小图片,只要用户打开了含有这个图片地址的链接,用到今天的服务端处理思路,我们就能很容易知道用户看了啥。
一张图片能做啥?你明白了吗?今天的文章就到这里,感谢你的阅读。
参考来源
网址:https://dev.to/0shuvo0/i-will-be-notified-if-you-click-this-7df
作者:Shuvo