作者:中华oc博弈网络志 | 来源:互联网 | 2013-07-18 13:57
今天下午弄了个新浪微博同步应用,测试好多次,终于成功了,下面说一下我的配置过程。欢迎大家来我的新浪微博做客!
首先, 得有sina微博的帐号,没有就注册一个,然后做个开发者,可以从微博中点过去,也可以直接输入网 址:http://open.t.sina.com.cn,选择我是开发者,在选择创建应用,进去填写开发者信息,成功之后获得你的APP KEY 和 APP SECRET,把它们复制下来,保存好了。
然后,去下载SDK文档,选择PHP语言的,看到“通过OAuth验证方式 ”,我用的就是这个,点下面的链接download下来,解压到本地。
第三步,开始测试了。把解压后的文件中的weobodemo文件夹拷贝到测试的目录下面,也就是你的站点目录,提前要得配置好虚拟域名,不会的可以参考我的另一篇文章,用apache配置独立虚拟域名。
weibodemo这个文件夹下面有个配置文件config.php,打开之后该做什么,你也就知道了,把你的APP KEY 和 APP SECRET 写进去。在浏览器中打开这一层目录,自动运行index.php文件,就不啰嗦了。
到这你会发现,出错了:Notice: Undefined index: SCRIPT_URI in D:\www\weibodemo\index.php on line 13
打开index.php,发现$_SERVER['SCRIPT_URI'],$_SERVER的参数根本就没有这个SCRIPT_URI,先别管,点击下面的链接,接着又出错:Sorry, that page doesn’t exist!
到这,估计好多人要放弃了,一下子不知道该怎么办了。其实,别把新浪微博这写应用开发想的那么高深,一般人是能够看明白的。仔细瞅瞅index.php吧,刚才点击的链接地址是WeiboOAuth这个类里面的getAuthorizeURL这个方法生成的,而且和接下来的callback函数有关,也就是callback.php文件。
从这,我们不难想到这个过程:先获取本地配置文件config.php中的APP KEY 和APP SECRET,接着肯定是要验证这个APP KEY 是否合法,另外询问我们是否授权给这个应用来同步更新微博,如果条件成立,那么就通过callback.php返回到本地上来,我们就可以在这个回调页面上写微博,最后点击发表,从t.sina.com.cn新浪官方微博上登录进去就可以看见刚才所发的文章消息了,下面应该注明“来自xxx”
了 解这个原理就不难了,把$_SERVER['SCRIPT_URI']改为我们本地的地址,也就是所在目录虚拟域名的地址,以便于返回到 callback.php上来,这样就不会出现找不到页面的错误了。比如:我的本地虚拟郁闷是http://localhost.com,知道d: /www/这个文件夹,我的weibodemo文件夹就放在/www/下面,那么我就把$_SERVER['SCRIPT_URI']改为http://localhost.com/weibodemo,连上后面的/callback.php就OK了。
这样就可以在显示“授权完成”后,点击进入你的微博界面weobolist.php,进去之后,你大吃一惊:相当的粗糙啊,没有样式,简单的html表单,哈哈,新浪微博的程序员怎么这么懒啊。赶紧发一条微博,测试一下吧,心里激动吧,呵呵。
我 们可以总结一下,其实蛮简单的,一共也就6个文件:config.php是配置文件,通过index.php进入到新浪微博的验证授权页面,同意授权之后 回到callback.php页面,点击进入我的微博,进到微博发表以及列表页weibolist.php,然后发表微博,就OK了。剩下的一个文件 weibooauth.php是一个类文件,装着许多类和函数,都是前面用到的,有兴趣的可以研究,可以不必理会它。还一个.DS_Stor不知道什么东西,打开是乱码,也不管了,估计没什么用的。
另外,提醒一下注意页面的编码格式,出现乱码的自己耐心的调试一下。