好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

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

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

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

<?php  /**     * 指定一个图片URL地址抓取后上传并同时发布一条新微博     *     * 对应API:{@link http://open.weibo测试数据/wiki/2/statuses/upload_url_text statuses/upload_url_text}     *     * @param string $status  要发布的微博文本内容,内容不超过140个汉字。     * @param string $url    图片的URL地址,必须以http开头。     * @return array     */   function  upload_url_text(  $status ,   $url  )   {        $params  =  array ();        $params [ 'status' ] =  $status ;        $params [ 'url' ] =  $url ;        return   $this ->oauth->post(  'statuses/upload' ,  $params , true );   }   ?> 

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

改成这样就ok了:

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

查看更多关于新浪微博PHP版SDK的导致20007错误 - php高级应用的详细内容...

  阅读:41次