博客调用QQ昵称的歪门邪道
2011.02.27 | 天气: 阴 | 标签: 技术, 折腾, 有趣的学习, 网站大家可以到博客任何文章页面或者我的留言板邮箱那栏输入自己的”QQ号+@qq.com”,在名称那栏应该会自动填写你的QQ昵称。当然,如果你输入的不是QQ号(有字符的QQ邮箱),不会判断而是读取然后填写。
代码呢是非常简单,共计454Byte:下载qq_nick.js
要插到哪你应该懂的,要不然请看看w3shcool的javascript教程
至于这个方法真是非常聪明,当然这不是我想出来的,我哪有这么聪明,只是改装了一下,大神的帖子在:
alibobo.5d6d.com/thread-291-1-1.html
如果你有闲工夫可以听我给你说说整个故事
事情还得从上次搞了个从邮箱智能判断用户的javascript之后说起,有位大姐姐在我这用自己的QQ号留言了,一是暴露了自己的QQ号,二是太生硬了;所以我一直在想能不能调用QQ昵称。然后实验了各种方法,ajax异步调用资料失败,原因是Firefox和Chrome之流不允许跨站调用(IE这次倒是愣头青),所以呢,就只好用大神的方法了,大神的方法聪明之处在于他对那段url请求的返回的理解
比如262652047(我的Q号)返回值是返回了一个类似函数的东西,大神真是灵光,既然返回了一个函数,就不如用函数调用呗,所以就有了最开始的那个
_Callback(
{"uin":262652047,
"qzone":1,
"nickname":"#!卓",
"offsetBirth":51,
"avatarUrl":"http://qlogo4.store.qq.com/qzone/262652047/262652047/100"});
_Callback(函数(而且Firefox也认为这只是一个站外脚本调用,没卡死),然后把他们一一填写到各自的输入ID值里(input id),当然,返回值还有头像地址啊,空间啊什么的,不过在我的博客里不需要,所以我去掉了。
顺带解决原来版本的问题:
- 不能多次请求(其实是变着方构成新的函数)
- 没有出错处理(超时啊、没有办法获得用户名等问题)
小结一下
从调用QQ昵称的全新方法,可以看出活在一个聪明人比你多的世界真是种幸福啊。
才发现原来Javascript & DHTML Cookbook P56已经讲了这事,真是看书不仔细……

