PHP+新浪微博开放平台+新浪云平台(SAE)开发微博应用——进一步学习的走向和有用的资源

PHP+新浪微博开放平台+新浪云平台(SAE)

——新浪微博应用开发的一个解决方案


一、PHP+新浪微博开放平台+新浪云平台(SAE)方案的基础
二、建立微博应用的过程
三、PHP SDK中Demo程序简析
四、进一步学习的走向和有用的资源
五、必须交待的几个问题
【PDF全文下载】



进一步学习的走向和有用的资源

  在进一步的学习中,你需要:

  (1)好好学习PHP:照猫画虎适合初入手,真正做项目不能靠这三板斧。

  (2)开始比较系统地看在线文档,包括微博开放平台的文档和SAE的文档。(本文附录1 中提供新浪微博旧版API中的PHP例程,可以作为初学时阅读和试探的参考材料)。

  (3)通读一遍weibooauth.php中的代码,优先读class WeiboClient中公共方法的定义。这些方法都是直接操作微博和用户的,清楚有哪些方法,其调用接口、默认参数等。 (附录2中 提供了作者整理的class WeiboClient中公共方法的说明)

  你可能还会:

  (1)改用别的语言开发;

  (2)应用中需要用到数据库:还就在SAE中开发也不错,MySQL已经在SAE应用中了。其实,SAE中除了代码部署、分布式数据库外,还提供了很多强大的服务支持,包括分布式文件存储、分布式缓存、代码调优、数据库优化、团队协作、代码版本管理等;

  (3)在专门的开发机上进行开发:在线编程有不少问题,常见的做法是开发团队自行配置服务器开发(当然1个人开发时,单机即做客户机又做服务器也是常见的),代码经过测试后再上线。配置各种平台将不可避免,只要起步了,这些并不是大问题。

  下面谈所谓有用的资源。

  <附录1 新浪微博开放平台旧版API中的PHP例程>

  附录1中是新浪微博旧版API中的PHP例程,可以作为初学时阅读和试探的参考材料。API 文档的旧版接口文档提供了一些PHP示例(新浪对PHP的支持最好),很方便用于学习。但是在新版API文档中,这些例子找不到了。另外,例子是通过接口组织的,这给初学者带来困难,我们希望通过要实现的功能来组织这些材料。例如,要实现转发一篇微博,能够很快地找到,这显然很诱人。

  附录1的使用方法:阅读每一段代码,将代码写入前面的weibolist.php文件中,或者另建一个文件,在已经建好的应用中运行,调试、观察、改写。以此为基础,学习过程将加快,成为微博开发的高手。

  需要说明的是,下面的条目分类有与API文档V2不一致的地方,请带着质疑,对照着API文档使用下面的例子。

  <附录2 新浪微博开放平台WeiboClient类的公共方法>

  附录2提供了作者整理的class WeiboClient中公共方法的说明,这些方法用于直接操作微博和用户的,需要很熟练地使用,熟知每个方法的名称、参数和返回值类型。大多函数的返回值为array,还需要通过API文档知道对应array中各字段的信息。

  例如,WeiboClient类中有公共方法的定义:

  1. /** 
  2.  * 发表图片微博 
  3.  * @access public 
  4.  * @param string $text 要更新的微博信息。 
  5.  * @param string $text 要发布的图片路径,支持url。[只支持png/jpg/gif三种格式,增加格式请修改get_image_mime方法] 
  6.  * @return array 
  7.  */  
  8. function upload( $text , $pic_path )  

  据此,我们知道发图片微博的代码应该包括:

  (1)创建WeiboClient类的对象实例(该实例来自于授权,一段程序中多种功能可以共用一个实例);

  (2)准备微博信息及图片url;

  (3)用upload方法发送;

  (4)利用返回的array完成后续处理。

  例如:

  1. <?php  
  2. $c = new WeiboClient( WB_AKEY ,  
  3.                       WB_SKEY ,  
  4.                      $_SESSION['last_key']['oauth_token'] ,  
  5.                      $_SESSION['last_key']['oauth_token_secret']  );  
  6. $t=’新微博’;  
  7. $p=’ http://ww1.sinaimg.cn/large/67c69b94gw1dqf3w3vct0j.jpg’;  
  8. $rr = $c ->upload( $t$p );  
  9. echo "<p>发送完成</p>" ;  
  10. }  
  11. ?>  




上一篇:mysql三高讲解(一):1.1 客户端怎样连接mysql数据库


下一篇:极速理解设计模式系列:21.简单工厂模式(Simple Factory Pattern)