腾讯微博提示missing parameter errorcode 102 错误的解决方法


Posted in PHP onDecember 22, 2014

本文实例讲述了腾讯微博提示missing parameter errorcode 102 错误的解决方法。分享给大家供大家参考。具体分析如下:

今天在调试腾讯微博接口时,出现一个错误,找了网上都没有相关资料,最后自己调通了,故发布此文,避免各位phper重复造轮子.

错误信息,代码如下:

stdClass Object 

( 

    [data] =>  

    [detailerrinfo] => stdClass Object 

        ( 

            [accesstoken] =>  

            [apiname] => 3water.com 

            [appkey] => 801485800 

            [clientip] => 112.193.138.133 

            [cmd] => 0 

            [proctime] => 0 

            [ret1] => 3 

            [ret2] => 3 

            [ret3] => 102 

            [ret4] => 3659629834 

            [timestamp] => 1394436892 

        ) 

 

    [errcode] => 102 

    [msg] => missing parameter 

    [ret] => 3 

    [seqid] => 1394436894 

)

在腾讯微博开放平台的官方资料中,未发现解释此错误代码102的开发文档,经过与腾讯微博PHP SDK对比后发现少了一个参数.

解决错误代码102的办法:

在请求用户资料的参数中oauth_version是必填的,而且在OAuth2中,它的值必须为2.a.

请求的参数中,OAuth2部分需包含:

字段 说明
oauth_consumer_key appkey
access_token 授权获得的accesstoken
openid 授权获取的openid
clientip 客户端的ip
oauth_version 版本号,必须为2.a
scope 请求权限范围(默认“all”)

Drupal 腾讯微博登录实例代码:

$http = drupal_http_request(url('https://open.t.qq.com/api/user/info', array( 

  'query' => array( 

    'access_token' => $access_token, 

    'oauth_consumer_key' => $provider['key'], 

    'openid' => $_GET['openid'], 

    'clientip' => ip_address(), 

    'scope' => 'all', 

    'seqid' => REQUEST_TIME, 

    'serverip' => $_SERVER['SERVER_ADDR'], 

    'oauth_version' => '2.a', 

    //'appfrom' => 'php-sdk2.0beta', 

  ), 

)));

注意:加上字段后需要重新从登录页面重新授权一次,不然会出现错误“check sign error” 错误代码36.

以下重复刷新接口导致的签名错误返回值,代码如下:

stdClass Object 

( 

    [data] =>  

    [detailerrinfo] => stdClass Object 

        ( 

            [accesstoken] =>  

            [apiname] => weibo.user.info 

            [appkey] => 801485800 

            [clientip] => 112.193.138.133 

            [cmd] => 0 

            [proctime] => 0 

            [ret1] => 3 

            [ret2] => 3 

            [ret3] => 36 

            [ret4] => 2636350730 

            [timestamp] => 1394437225 

        ) 

 

    [errcode] => 36 

    [msg] => check sign error 

    [ret] => 3 

    [seqid] => 1394437227 

)

获取腾讯微博用户资料,获取当前登录用户的个人资料 user/info 接口返回值的字段说明,代码如下:
{ 

 errcode : 返回错误码, 

 msg : 错误信息, 

 ret : 返回值,0-成功,非0-失败, 

 data :  

 { 

  birth_day : 出生天, 

  birth_month : 出生月, 

  birth_year : 出生年, 

  city_code : 城市id, 

  comp :  

  { 

   begin_year : 开始年, 

   company_name : 公司名称, 

   department_name : 部门名称, 

   end_year : 结束年, 

   id : 公司id 

  }, 

  country_code : 国家id, 

  edu : 教育信息 

  { 

   departmentid : 院系id, 

   id : 教育信息记录id, 

   level : 学历级别, 

   schoolid : 学校id, 

   year : 入学年 

  }, 

  fansnum : 听众数, 

  favnum : 收藏数, 

  head : 头像url, 

  homecity_code : 家乡所在城市id, 

  homecountry_code : 家乡所在国家id, 

  homepage : 个人主页, 

  homeprovince_code : 家乡所在省id, 

  hometown_code : 家乡所在城镇id, 

  idolnum : 收听的人数, 

  industry_code : 行业id, 

  introduction : 个人介绍, 

  isent : 是否企业机构, 

  ismyblack : 是否在当前用户的黑名单中,0-不是,1-是, 

  ismyfans : 是否是当前用户的听众,0-不是,1-是, 

  ismyidol : 是否是当前用户的偶像,0-不是,1-是, 

  isrealname : 是否实名认证,1-已实名认证,2-未实名认证, 

  isvip : 是否认证用户,0-不是,1-是, 

  location : 所在地, 

  mutual_fans_num : 互听好友数, 

  name : 用户帐户名, 

  nick : 用户昵称, 

  openid : 用户唯一id,与name相对应, 

  province_code : 地区id, 

  regtime : 注册时间, 

  send_private_flag : 是否允许所有人给当前用户发私信,0-仅有偶像,1-名人+听众,2-所有人, 

  sex : 用户性别,1-男,2-女,0-未填写, 

  tag : 标签 

  { 

   id : 个人标签id, 

   name : 标签名 

  }, 

  tweetinfo : 最近的一条原创微博信息 

  { 

   city_code : 城市码, 

   country_code : 国家码, 

   emotiontype : 心情类型, 

   emotionurl : 心情图片url, 

   from : 来源, 

   fromurl : 来源url, 

   geo : 地理位置信息, 

   id : 微博唯一id, 

   image : 图片url列表, 

   latitude : 纬度, 

   location : 发表者所在地, 

   longitude : 经度, 

   music : 音频信息 

   { 

    author : 演唱者, 

    url : 音频地址, 

    title : 音频名字,歌名 

   }, 

   origtext : 原始内容, 

   province_code : 省份码, 

   self : 是否自已发的的微博,0-不是,1-是, 

   status : 微博状态,0-正常,1-系统删除,2-审核中,3-用户删除,4-根删除, 

   text : 微博内容, 

   timestamp : 服务器时间戳,不能用于翻页, 

   type : 微博类型,1-原创发表,2-转载,3-私信,4-回复,5-空回,6-提及,7-评论, 

   video : 视频信息 

   { 

    picurl : 缩略图, 

    player : 播放器地址, 

    realurl : 视频原地址, 

    shorturl : 视频的短url, 

    title : 视频标题 

   } 

  }, 

  tweetnum : 发表的微博数, 

  verifyinfo : 认证信息, 

  exp : 经验值, 

  level : 微博等级 

 }, 

 seqid : 序列号 

}

剩下的事就非常容易了,处理你自己程序部分的逻辑业务.

希望本文所述对大家的PHP程序设计有所帮助。

PHP 相关文章推荐
扩展你的 PHP 之入门篇
Dec 04 PHP
PHP删除目录及目录下所有文件的方法详解
Jun 06 PHP
php中用socket模拟http中post或者get提交数据的示例代码
Aug 08 PHP
php通过数组实现多条件查询实现方法(字符串分割)
May 06 PHP
PHP遍历目录并返回统计目录大小
Jun 09 PHP
PHP 在数组中搜索给定的简单实例 array_search 函数
Jun 13 PHP
Yii中的cookie的发送和读取
Jul 27 PHP
php车辆违章查询数据示例
Oct 14 PHP
PHP输出多个元素的排列或组合的方法
Mar 14 PHP
yii2安装详细流程
May 23 PHP
laravel框架查询数据集转为数组的两种方法
Oct 10 PHP
TP5框架安全机制实例分析
Apr 05 PHP
php有道翻译api调用方法实例
Dec 22 #PHP
php匹配字符中链接地址的方法
Dec 22 #PHP
php用户注册时常用的检验函数实例总结
Dec 22 #PHP
CentOS6.5 编译安装lnmp环境
Dec 21 #PHP
在SAE上搭建最新wordpress的方法
Dec 21 #PHP
PHP获取当前完整URL地址的函数
Dec 21 #PHP
学习php开源项目的源码指南
Dec 21 #PHP
You might like
防止本地用户用fsockopen DDOS攻击对策
2011/11/02 PHP
浅析PHP绘图技术
2013/07/03 PHP
php中session退出登陆问题
2014/02/27 PHP
Zend Framework入门教程之Zend_View组件用法示例
2016/12/09 PHP
利用onresize使得div可以随着屏幕大小而自适应的代码
2010/01/15 Javascript
IE与Firefox在JavaScript上的7个不同句法分享
2011/10/30 Javascript
基于jquery的时间段实现代码
2012/08/02 Javascript
JS中toFixed()方法引起的问题如何解决
2012/11/20 Javascript
Node.js中使用计时器定时执行函数详解
2014/08/15 Javascript
jquery常用方法及使用示例汇总
2014/11/08 Javascript
JS+CSS实现Li列表隔行换色效果的方法
2015/02/16 Javascript
JQuery实现鼠标移动图片显示描述层的方法
2015/06/25 Javascript
基于jQuery对象和DOM对象和字符串之间的转化实例
2017/08/08 jQuery
聊聊JS动画库 Velocity.js的使用
2018/03/13 Javascript
vue+express 构建后台管理系统的示例代码
2018/07/19 Javascript
jQuery利用FormData上传文件实现批量上传
2018/12/04 jQuery
Python多线程下载文件的方法
2015/07/10 Python
Django中处理出错页面的方法
2015/07/15 Python
玩转python selenium鼠标键盘操作(ActionChains)
2020/04/12 Python
Python在groupby分组后提取指定位置记录方法
2018/04/20 Python
python 识别图片中的文字信息方法
2018/05/10 Python
flask框架实现连接sqlite3数据库的方法分析
2018/07/16 Python
python 使用正则表达式按照多个空格分割字符的实例
2018/12/20 Python
pyqt5 从本地选择图片 并显示在label上的实例
2019/06/13 Python
Python模拟登入的N种方式(建议收藏)
2020/05/31 Python
Django+RestFramework API接口及接口文档并返回json数据操作
2020/07/12 Python
python 如何停止一个死循环的线程
2020/11/24 Python
基于CSS3的animation属性实现微信拍一拍动画效果
2020/06/22 HTML / CSS
大学生的网络创业计划书
2013/12/26 职场文书
自主实习接收函
2014/01/13 职场文书
党的群众路线教育实践活动个人整改落实情况汇报
2014/10/28 职场文书
2014年租房协议书范本
2014/10/30 职场文书
2015年世界无烟日活动总结
2015/02/10 职场文书
Nginx开启Brotli压缩算法实现过程详解
2021/03/31 Servers
Redis 持久化 RDB 与 AOF的执行过程
2021/11/07 Redis
浅谈GO中的Channel以及死锁的造成
2022/03/18 Golang