微博官方API支離破碎,仿佛都是實習生的練手之作。讓我這種大菜鳥郁悶不已,搜網上的微博第三方登錄,基本都是只有問題沒有解決結果。最后解決了,所以寫下這篇文章,已祭奠我的一上午。
首先,登錄http://open.weibo.com/,注冊一個賬戶,進行網站接入,所謂什么域名,網站名稱屬於百度問題,搜一下就可以了。
PS:注意一個問題,你的微博第三方登錄,在JS上你必須得在你設定的網站接入域名下進行.
如果不在,報錯wb.js?appkey=YOU App Key&debug=true:1 GetOAuth2AccessTokenForJsServlet has not Referer!
這是因為你所在的域名進行編輯,並沒有在你網站接口的域名下編輯,微博進行的限制。
(光這問題微博的官方問題藏在犄角旮旯里,我算是服了,再看看QQ的官方文檔,公司與公司之間差距啊)
然后遇到的是取出數據的問題
在官方文檔上說的是在這里
WB2.anyWhere(function(W){ //數據交互 W.parseCMD('/users/show.json', function(oResult, bStatus) { if(bStatus) { alert() } }, { screen_name : '姚晨' }, { method : 'get', cache_time : 30 }); });
bStatus傳的數據是true ,而oResult傳的是數據,遇到了的問題是確實得到json,也走通了,但是一直取不到數據,alert打印oResult的是obj,並沒有出來,所以很苦惱,后來解決了。
在
WB2.anyWhere(function(W){ //數據交互 W.parseCMD('/users/show.json', function(oResult, bStatus) { if(bStatus) { console.bStatus;console.oResult; //控制台出現數據 alert(oResult.id);//打印ID } }, { screen_name : '姚晨' }, { method : 'get', cache_time : 30 }); });
方法下搞定。
學無止境,一個第三方登錄能搞這么長時間,差的太多,學會了沒事多用控制台console