您好,登錄后才能下訂單哦!
這篇文章主要介紹“如何解決騰訊微博提示missing parameter errorcode 102錯誤的問題”,在日常操作中,相信很多人在如何解決騰訊微博提示missing parameter errorcode 102錯誤的問題問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”如何解決騰訊微博提示missing parameter errorcode 102錯誤的問題”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
具體分析如下:
今天在調試騰訊微博接口時,出現一個錯誤,找了網上都沒有相關資料,最后自己調通了,故發布此文,避免各位phper重復造輪子.
錯誤信息,代碼如下:
復制代碼 代碼如下:
stdClass Object
(
[data] =>
[detailerrinfo] => stdClass Object
(
[accesstoken] =>
[apiname] => www.jb51.net
[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是必填的,而且在OAuth3中,它的值必須為2.a.
請求的參數中,OAuth3部分需包含:
字段 | 說明 |
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 : 序列號
}
剩下的事就非常容易了,處理你自己程序部分的邏輯業務.
到此,關于“如何解決騰訊微博提示missing parameter errorcode 102錯誤的問題”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。