网站地图    收藏   

主页 > php专栏 > php应用 >

新浪微博PHP版SDK的导致20007错误 - php高级应用

来源:自学PHP网    时间:2014-11-27 22:16 作者: 阅读:

[导读] 新浪微博有个高级接口rsquo;statuses upload_url_textrsquo;(需要在open weibo com中额外申请),传递一个图片URL地址和文本内容,就可...

新浪微博PHP版SDK的导致20007错误

新浪微博有个高级接口’statuses/upload_url_text’(需要在open.weibo.com中额外申请),传递一个图片URL地址和文本内容,就可以发一条图文微博,对应在php版SDK的function如下:

  1. <?php 
  2. /**  
  3.  * 指定一个图片URL地址抓取后上传并同时发布一条新微博  
  4.  *  
  5.  * 对应API:{@link http://open.weibo.com/wiki/2/statuses/upload_url_text statuses/upload_url_text}  
  6.  *  
  7.  * @param string $status  要发布的微博文本内容,内容不超过140个汉字。  
  8.  * @param string $url    图片的URL地址,必须以http开头。  
  9.  * @return array  
  10.  */ 
  11. function upload_url_text( $status,  $url )  
  12. {  
  13.     $params = array();  
  14.     $params['status'] = $status;  
  15.     $params['url'] = $url;  
  16.     return $this->oauth->post( 'statuses/upload'$params, true );  
  17. }  
  18. ?> 

调用api的处有明显的错误:$this->oauth->post( 'statuses/upload', $params, true );(一方面应该请求:statuses/upload_url_text,另外一方面第三个参数错误)以致会出现:20007错误(20007:does multipart has image ?)

改成这样就ok了:

  1. <?php /**  
  2.  * 指定一个图片URL地址抓取后上传并同时发布一条新微博  
  3.  *  
  4.  * 对应API:{@link http://open.weibo.com/wiki/2/statuses/upload_url_text statuses/upload_url_text}  
  5.  *  
  6.  * @param string $status  要发布的微博文本内容,内容不超过140个汉字。  
  7.  * @param string $url    图片的URL地址,必须以http开头。  
  8.  * @return array  
  9.  */ 
  10. function upload_url_text( $status,  $url )  
  11. {  
  12.     $params = array();  
  13.     $params['status'] = $status;  
  14.     $params['url'] = $url;  
  15.     return $this->oauth->post( 'statuses/upload_url_text'$params, false);  
  16. } ?>

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论