今天在调试腾讯微博接口时,出现一个错误,找了网上都没有相关资料,最后自己调通了,故发布此博文,避免各位phper重复造轮子。 错误信息: stdClass Object( [data] = [detailerrinfo] = stdClass Object ( [accesstoken] = [apiname] = weibo.user.info [a
今天在调试腾讯微博接口时,出现一个错误,找了网上都没有相关资料,最后自己调通了,故发布此博文,避免各位phper重复造轮子。
错误信息:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
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] => 102
[ret4] => 3659629834
[timestamp] => 1394436892
)
[errcode] => 102
[msg] => missing parameter
[ret] => 3
[seqid] => 1394436894
)
ログイン後にコピー
在腾讯微博开放平台的官方资料中,未发现解释此错误代码102的开发文档。经过与腾讯微博PHP SDK对比后发现少了一个参数。
在请求用户资料的参数中oauth_version是必填的,而且在OAuth2中,它的值必须为2.a。
请求的参数中,OAuth2部分需包含:
字段 | 说明 |
---|---|
oauth_consumer_key | appkey |
access_token | 授权获得的accesstoken |
openid | 授权获取的openid |
clientip | 客户端的ip |
oauth_version | 版本号,必须为2.a |
scope | 请求权限范围(默认“all”) |
1
2
3
4
5
6
7
8
9
10
11
12
13
$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。
(...)
Read the rest of 解决腾讯微博 missing parameter errorcode 102 (249 words)
© Li Xi for LixiPHP, 2014. |
Permalink |
No comment |
Add to
del.icio.us
Post tags: 102, drupal, errorcode, missing parameter, qq, QQweibo, 腾讯微博
Feed enhanced by Better Feed from Ozh