为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

魔力日志

2013-11-24 5页 doc 300KB 33阅读

用户头像

is_871296

暂无简介

举报
魔力日志点击进入这篇日志发现根本没这张图,你也许会奇怪图上为什么会显示自己的一些信息呢,为什么打开日志后就没有了呢,这不为人知的秘密背后又隐藏着什么呢,让我们带着疑问随着镜头一起走进这篇日志背后的操作及原理! 第一步:QQ空间里编辑日志,点击“插入图片”的标记 第二步,点击“网络图片”,此时会出现如下对话框。 第三步(关键的一步):在编辑框内输入网络地址并点击添加按钮。 第四步,点击“确定”,此时已经可以看到右上角已经识别出图片了。 第五步,发表日志,此时,你的好友在个人中心里就会看到以上的效果了,谁看图片显示谁的日志。 ...
魔力日志
点击进入这篇日志发现根本没这张图,你也许会奇怪图上为什么会显示自己的一些信息呢,为什么打开日志后就没有了呢,这不为人知的秘密背后又隐藏着什么呢,让我们带着疑问随着镜头一起走进这篇日志背后的操作及原理! 第一步:QQ空间里编辑日志,点击“插入图片”的标记 第二步,点击“网络图片”,此时会出现如下对话框。 第三步(关键的一步):在编辑框内输入网络地址并点击添加按钮。 第四步,点击“确定”,此时已经可以看到右上角已经识别出图片了。 第五步,发表日志,此时,你的好友在个人中心里就会看到以上的效果了,谁看图片显示谁的日志。 原理:其实这两张图片根本不是同一张图片,动态的变化说明了图片本身不存在,而只是临时生成的,这要涉及到很多代码了 所以我们插入图片的时候,链接是一个动态的php文件,而不是一个正常的图片就这个原因了,服务器需要搜集QQ空间用户信息,所以是动态的,具体代码如下 然后写上标题,发表即可。 你就努力让人转载吧,可能会吓到很多人的哦,所以不要做的太过咯,内容自己掌握了,也可以用来引爆流量的哦,无论是做产品还是宣传空间都是很有效的方法. 如要修改里面的内容那只能下载源码,然后写上自己想要修改的内容,上传网站空间即可。源码和如下: 1.一个免费空间,免费域名;(百度一下,你就知道。) 2.下载源码,后台更改自己的东西; 下载后解压文件会看到如下文件: 显示的内容在content.php里面,改上想你要说的话,注意的是只能改动汉字,其他的英文字母不要乱改,以免造成不显示的后果。 3.然后把修改好的直接上传你申请的空间即可。 4.然后去空间发表日志,-插入图片-网络图片,填写地址,注意 你申请的域名+do.php 如:http://xx.xx.com/do.php 大概原理是: 日志发布者,在日志中插入一张网络图片,也就是一个网址,这个网址的会服务器端返回一个临时生成的一个图片。这个时候当我们在自己的qq空间“好友动态”里看到对方的日志的时候,看到的就是一个临时生成的图片。 问题:但是为什么会谁看显示谁的qq号呢? 因为浏览器在请求“图片网址”的时候会带上referer,http请求头。而这个请求头就是阅读者当前的qq空间地址,里面自然有阅读者的qq号。这个时候后台程序就可以根据qq号,调用腾讯的公开的接口获取qq的网名,头像等信息。如果点日志进去就看不到了,因为这个时候的referer里面不带有阅读者的qq。 图解: 上面是大概原理,具体还有一些细节如果不注意也做不出来“魔力日志”,下面从程序猿的角度来解读下制作过程注意事项: 1:首先是要有自己的网上空间(可以推荐大家去“主机屋”里面貌似有免费的。或者百度免费空间) 2:写程序程序获取referer(内容是:http://user.qzone.qq.com/652585345/infocenter,其中652585345就是阅读者的qq号)。访问腾讯URL:http://base.qzone.qq.com/fcg-bin/cgi_get_portrait.fcg?uins=652585345 把其中的652585345。换成从referer获取到的qq号。可以先复制到浏览器试试。一般猿类,一看返回的内容就知道什么意思了 3:从返回内容里解析出“网名”,“头像地址”。(可以先截取成json字符串,然后解析json就可以 方便访问了。) 4: 准备一张背景图片,然后用程序把“网名”、“QQ号”、“头像” 混合到背景中,生成图片。 5: 上传程序到自己的网络空间,写QQ日志、插入网络图片,就写自己生成图片的程序地址。 6:访问,看效果。结束。 严重注意事项和细节: 当程序接收到的请求没有referer的时候只返回http状态吗:200,不要返回响应体,要不然腾讯会缓存日志图片,别人浏览的时候就不会动态获取图片。魔力日志的效果就出不来了。这个网上的文章都没有说,害我搞了半天才整出来。 由于本人擅长使用java,没有php基础。但是空间是php的(php的便宜大家懂的),无奈各种百度和纠结拼凑出实现了功能的php代码(估计php行家一看写的很垃圾)。 源码如下(这个是网名、qq号、头像全的):如果要获取好友“头像”,时间回略长,建议不要加头像。 13){ $qqNo=iconv('GB2312', 'UTF-8',"made by 652585345");//有些时候有referer,但是referer不对。 }else{ $urlText=file_get_contents("http://base.qzone.qq.com/fcg-bin/cgi_get_portrait.fcg?uins=$qqNo");//这个地址可以获取到qq的一些信息,可以copy到浏览器把 $qqNo换成qq号,试试。 $startIndex=strpos($urlText,"["); $endIndex=strpos($urlText,"}"); $json=substr($urlText,$startIndex,$endIndex-$startIndex); $jsonObj=json_decode(iconv('GB2312', 'UTF-8',$json)); $qqName=$jsonObj[6]; $img1 =@imagecreatefromjpeg($jsonObj[0]); //这里是获取QQ头像 imagecopymerge($img,$img1,280,220,0,0,100,100,100);//把QQ头像和原头像拼接 } imagettftext($img, 15, 0, 120, 235, $textColor, $font, $qqName);//输出网名 imagettftext($img, 15, 0, 120, 295, $textColor, $font, "$qqNo");//输出QQ号 imagejpeg($img);//建立jpeg图形 imagedestroy($img);//结束图形, } ?> 之前做的魔力日志,可以转载后看效果: 只显示网名和QQ号: http://user.qzone.qq.com/652585345/infocenter#!app=2&via=QZ.HashRefresh&pos=1379774061(魔力日志之新闻联播寻人启事) http://user.qzone.qq.com/652585345/infocenter#!app=2&via=QZ.HashRefresh&pos=1379857913(魔力日志之百度搜索) 网名、QQ号、头像都显示(加载时间有点长): http://user.qzone.qq.com/652585345/infocenter#!app=2&via=QZ.HashRefresh&pos=1379827557(魔力日志之全球通缉令)
/
本文档为【魔力日志】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索