微信开发之OpenId

写在前面:接到这样的一个需求,在微信公众号的一个菜单上链接到一个第三方网页应用。最开始想,加个链接不就行了吗?不是的。
此文章来源:https://www.jianshu.com/p/4335a25fa98d 感谢[兴尽晚归舟]作者

从事微信开发的朋友们一定对openID非常熟悉。对于一个公众号来说,一个OpenID就意味着一个用户。然而如果你对OpenID不熟悉也没关系,本文就是要写给初接触互联网的小白们,看完下面的内容,希望你能对它有一定的认识。
我们用一个小比喻来说明一下,在用户与公众号的一个对话交互中,OpenID扮演了什么角色。

场景是这样的:

某用户关注了一个公众号。
公众号立即给用户回复了一句话:“你瞅啥?”。
用户说道:“瞅你咋地!”
用户发完这句话觉得很不爽,遂取消了关注。

整个过程的信息流是这样的:
用户关注公众号的时候,微信服务器通知公众号开发者:

大哥,醒醒!有个人关注了你哎,他的OpenID是xxxx.

开发者被吵醒,此时脾气不太好,就告诉微信服务器:

对这个OpenID是xxxx的人说“你瞅啥?”

当用户回复消息的时候,微信服务器又告诉开发者:

矮马!大哥!OpenID是xxxx的小子说“瞅你咋地!”

开发者此时已经拎起了锤子。淡素!开发者此时只知道用户的OpenID,家住哪儿?不知道!身份证号是多少?不知道!手机号是多少?不知道!甚至连微信号是多少都不知道!正准备还嘴骂回去,微信服务器又告诉开发者:

大哥,有个小子取消了对你的关注,它的OpenID是xxxx.

大哥对微信服务器说:

告诉OpenID为xxxx的这小子:“以后见你一次削你一次!”

微信服务器说到:

大哥,xxxx是谁啊?你的粉丝里没有这号人啊!

这位大哥拔剑四顾心茫然,最后连还嘴的机会都没有了。
这就是OpenID,一个互联网用户的身份标识。对于公众号来说,每一个用户,都有一个OpenID,开发者想要联系这个用户,必须通过这个ID来进行。而用户取消对其关注之后,开发者想要再向这个用户发消息,是不可能的。
在互联网环境中,一个东西能够作为用户的ID,需要至少具备以下特征:

能够唯一的确定一个用户
能够通过它联系到这个用户

你可能感兴趣的:(微信开发之OpenId)