1.

在古老的非洲大陆上,有个原始人无意中抬头仰望星空,凝视的时间稍微长了一些,超过了外星人设置的阈值,立刻拉响了人类即将产生文明的警报。因为外星人认为,人类已经产生了对宇宙的好奇心,文明的产生,科技的发展不过是一瞬间的事情——摘自刘慈欣《朝闻道》。

作为一个靠技术吃饭的我们,面对系统架构快速更新迭代,新技术层出不穷,如果不抱有对技术的好奇心,那么真可能会出现“昨日的你懵懂,今天的你却不懂”;更不会出现 Java 那小子 与 Python 菇凉浪漫的爱情故事。

准备好小板凳,爱情故事要开始啦。

2.

近期 Java 那小子,陷入了对 Python 菇凉的水深火热的爱情追逐。

9012 年 7 月 2 日是 Python 菇凉的生日,也就是今天,正是 Java 表爱心的好时机。Java 思索了好几天,想给心爱的 Python 菇凉送一个惊喜,于是绞尽脑汁制作了一个生日贺卡,由于 Java 天生脸皮就薄,不敢公开示爱,只能默默通过 Email 的方式邮寄过去。

由于 Python 菇凉的倾国倾城,导致追求她的年轻有为的帅小伙尤其的多,不知道有多少追求者曾拜倒在她的石榴裙下。

Java 十分好奇的想知道 Python 菇凉到底有没有看过自己发过去的爱的祝福?也不知道是否会被淹没在她专门收取爱的百宝收件箱中?

一向擅长默默行事的 Java,头顶个大大的问号,抱着好奇的心,找来压箱底的那本厚厚的《爱情 36 技》,倒腾好几遍。当倒腾到快要放弃时,突然倒腾到第 35 技 —— 追美妹的技术,Java 眼前一亮,心中乐开了花。

Java 结合自己的现状,认真展开了对《爱情 36 技》中的追美妹攻略的使用解读。

追美妹攻略使用指南。这个攻略,谨献给那些:内心无时无刻不在思念远在天涯的对方,而且时不时纠结每次发过去的祝福,是否被深爱的她(他)成功接收的小哥哥小姐姐们。

追美妹攻略实施步骤。

 

第一步:智商不够,HTML 月老来凑。

 

找 HTML 月老,把你想要表达的坚如磐石、海枯石烂的爱情让 HTML 月老帮你实现一个祝福贺卡。

月老肯定会把你的爱情表达的淋漓尽致,一定会达到你的满意。

第二步:耍小聪明,让追踪不成问题。

 

祝福贺卡 HTML 月老实现完成后,此时需要你稍作手脚。在祝福贺卡的正文中,找个不起眼的地方,放入一张空白的图片,爱情配方如下:

<img style='display:none;' src='http://www.javalovepython.com/loveFeedBack/pythonVipId'/>

  

其中图片的 src 属性为 Java 那小子专门提供的统计 Python 菇凉是否已阅的服务口,并把 Python 菇凉在 Java 心目中存储的 vip 编号掺入其中,以便确定是 Python 菇凉的阅读贺卡回馈,而不是 C++ 大娘的阅读回馈。

第三步:攻略献上,静等爱情的心跳。

此时当 Python 菇凉打开 Java 发过去的祝福贺卡时,她的百宝收件箱客户端解释执行邮件正文渲染的时候,埋藏的图片会执行 src 请求,会向 Java 发送已阅心跳(想想场景都很刺激)。

当 Python 菇凉向 Java 发送已阅心跳时,会调用 Java 那小子提前准备好的爱情服务口,爱情服务口会把对应的祝福贺卡是否已读状态,改为已读状态(想想暗箱操作,别有一番爱情的滋味)。

第四步:经验之谈。

人有失足,马有失蹄,经验也有不准的时候,未雨绸缪,爱情心跳双保险。

追踪 Python 菇凉的流程没毛病,Java 那小子能够正常判断 Python 菇凉是否读取了祝福贺卡邮件,但是由于 Python 菇凉收取爱的邮件百宝箱的版本不同,会导致有些埋藏的图片却无法隐藏,一旦展示将导致爱情局面无法挽回,所以 Java 那小子还需要在服务口真正的返回一张 1 x 1 的样式为不可见的图片。

随着 Python 菇凉阅读邮件的反馈次数越来越高,潜在表达了对 Java 好感越来越浓,Java 那小子用邮件发送爱情的祝福的频率也越来越高,就这样你侬我侬,一来二去,最终Java 那小子终于抱得美人归。

3.

故事讲完了,追逐爱情的攻略你 get 到了没?容我们再来总结一下。

a. HTML 月老负责生成邮件正文;
b. 添加一张样式为隐藏,大小为 1 x 1 的图片,其中 src 地址为服务端统计接口 url 地址;
c. 实现 src 对应的服务端接口 url,做阅读记录更新,再真实返回一张 1 x 1 的图片。

  

只写思路,不写代码都是氓流,所以我还是码两行硬编码吧,以供你们参考。

题外话:此种追踪技术不但适合在爱情的追逐上,同时也适用于工作中邮件阅读量统计以及诸多统计类的需求。

其中好奇的你肯定会问:是否能够获取足够多的隐私信息?这个可能存在不可告人的秘密啦,自己尝试摸索一下吧。

好了,今天的故事就讲完了,希望你们喜欢。

【Java技术系列】爱情36技之追美妹的技术的更多相关文章

  1. 【Java技术系列】爱情36技之暗送秋波的技术

    1. 这篇文章想分享已经很久了,苦于皱巴巴的技术比较生涩难懂,迟迟没有找到好的分享方式,今天结合爱情中暗送秋波的故事的形式,尝试分享一下. 以后如果再有人问你们:能否在加载类的时候,对字节码进行修改? ...

  2. Java Redis系列3(Jedis的使用+jedis连接池技术)

    Jedis的使用 什么是Jedis? 一款Java操作redis数据库的工具 使用步骤 1.下载redis所需的java包 2.使用步骤 import org.junit.Test; public c ...

  3. 【Java技术系列】爱情36技之记忆永存

    1.  关注“一猿小讲”的伙伴们都清楚,Java 那小子带着心爱的 Python 菇凉,去了一趟浪漫的土耳其,然后一起又去了东京和巴黎,接着 Python 菇凉自己又去了云南的大理. 就在昨天,Pyt ...

  4. 【Java技术系列】爱情36技之Bug大战

    1. 鲁迅先生说:程序员,天不怕地不怕,就怕小虫儿爬呀爬,爬呀爬. 随着时间的推移,鲁迅先生又说:真正勇猛的程序员,敢于让虫子面对惨淡的虫生. 虫子在程序员心中是啥东西?虫子的学名为 Bug,是多少入 ...

  5. Java基础系列(36)- 数组三种初始化及内存分析

    内存分析 数组三种初始化 静态初始化 int[] a = {1,2,3}; Man[] mans = {new Man(1,1),new Man(2,2)} 动态初始化 int[] a = new i ...

  6. Azure Messaging-ServiceBus Messaging消息队列技术系列-索引篇

    Azure Messaging ServiceBus Messaging相关的技术系列,最近已经整理了不少了,统一做一个索引链接,置顶. 方便查找,并后续陆陆续续再增加. 学习消息队列技术,可以先看第 ...

  7. 1.Java 加解密技术系列之 BASE64

    Java 加解密技术系列之 BASE64 序号 背景 正文 总结 序 这段时间,工作中 用到了 Java 的加解密技术,本着学习的态度,打算从这篇文章开始,详细的研究一番 Java 在加解密技术上有什 ...

  8. Java 加解密技术系列文章

    Java 加解密技术系列之 总结 Java 加解密技术系列之 DH Java 加解密技术系列之 RSA Java 加解密技术系列之 PBE Java 加解密技术系列之 AES Java 加解密技术系列 ...

  9. 11.Java 加解密技术系列之 总结

    Java 加解密技术系列之 总结 序 背景 分类 常用算法 原理 关于代码 结束语 序 上一篇文章中简单的介绍了第二种非对称加密算法 — — DH,这种算法也经常被叫做密钥交换协议,它主要是针对密钥的 ...

随机推荐

  1. DIY 作品 及 维修 不定时更新

    手机电池DIY充电宝 2块,优质手机电池加一个升压ic ,焊上一个 usb 母头.比买的强多了. 还能调压,最高调到24V 可以带白光焊台. 更换手机 SIM/SD 卡二合一 贴上高温胶带,吹下来. ...

  2. django 从零开始 4 404页面和500页面设置

    在视图函数中定义两个 函数 分别对应404 个500页面 (自定义html内容吧,这里只是展示) 在template页面指向自己定义的404.html和500.html页面 在项目的urls中设置 h ...

  3. 【05】openlayers 网格图层

    效果: 创建地图: //创建地图 var map = new ol.Map({ //设置显示地图的视图 view: new ol.View({ projection: 'EPSG:4326', //投 ...

  4. JAVAEE学习day06,面向对象

    1.面向对象与面向过程思想 什么时面向过程: 面向过程的每一个步骤和过程,把每一个步骤和过程完成,然后又这些功能相互调用,完成需求 强调的时过程,所有的事情都需要自己完成 什么时面向过程: 面向对象思 ...

  5. vue基础----修饰符,watch,computed,method实例方法

    1.vue常用的修饰符,number,trim,number--->当作数字,trim-->去掉前后空格 2.methods与计算属性 computed 的相同与区别 <body&g ...

  6. mycli初体验

    一.安装 pip install mycli 二.使用 mycli --help 三.特点 语法不全,高亮等

  7. jQuery实现颜色打字机

    效果:每个字逐个显示出来,并且每个字都有随机颜色 $(function(){ var str="早起的鸟儿有虫吃,早起的虫儿被鸟吃!由此天赋+勤奋=成功;先天不足+同等勤奋=还是失败!天赋的 ...

  8. Nginx配置Web项目(多页面应用,单页面应用)

    目前前端项目 可分两种: 多页面应用,单页面应用. 单页面应用 入口是一个html文件,页面路由由js控制,动态往html页面插入DOM. 多页面应用 是由多个html文件组成,浏览器访问的是对应服务 ...

  9. niginx:duplicate MIME type "text/html" in nginx.conf 错误(转载)

    把nginx升级到最新以后,发现用原来的配置启动的时候会提示: duplicate MIME type "text/html" in /usr/local/nginx/conf/n ...

  10. Effective Python读书笔记

    有些位置可能翻译理解的不到位,各位看官如有疑问,欢迎留言赐教. Pythonic Thinking 大家经常用Pythonic来形容python语法风格的编程方式:简单优美,没有之一:通过import ...