前言
絕大多數(shù)網(wǎng)站都集成了第三方登錄,降低了注冊(cè)門檻,增強(qiáng)了用戶體驗(yàn)。最近看了看 QQ 互聯(lián)上 QQ 登錄的接口文檔。接入 QQ 登錄的一般流程呢,是這樣的:先申請(qǐng)開發(fā)者 -> 然后創(chuàng)建應(yīng)用(拿到一組 AppId 和 AppKey)-> 獲取 access_token -> 獲取 openid -> 調(diào)用 openApi 訪問或修改用戶信息。
然而,從申請(qǐng)個(gè)人開發(fā)者開始,坑就來了。
1. 申請(qǐng)(個(gè)人)開發(fā)者
QQ 互聯(lián)中申請(qǐng)開發(fā)者信息的頁(yè)面,一些重點(diǎn)太過簡(jiǎn)陋,缺失細(xì)節(jié),比如身份證正面照的相關(guān)拍攝細(xì)節(jié)完全沒有描述,我當(dāng)時(shí)就直接上傳了這個(gè)“身份證正面照”,然后等了 3 天, 3 天后收到騰訊開放平臺(tái)的郵件通知說審核沒通過,需要手持身份證。好吧,那就重拍~~。問了客服之后確定了這個(gè)“手持身份證”拍攝的正確姿勢(shì),然后我換了平臺(tái),在騰訊開放平臺(tái)中改了我的申請(qǐng)信息,重新上傳了身份證,我注意到上傳框的下面有拍攝提示,看了下是個(gè)小姐姐的手持身份證照片,挺好看的,提示友好,比 QQ 互聯(lián)上的申請(qǐng)頁(yè)面好多了。又過了 2 天之后審核通過。
所以,申請(qǐng)開發(fā)者的話,最好還是在騰訊開放平臺(tái)申請(qǐng)吧,信息相對(duì)詳細(xì),也更友好,QQ 互聯(lián)給人感覺好久沒維護(hù)了。
2. 接口調(diào)用——發(fā)布微博
(1)發(fā)布微博的接口 add_t:必需參數(shù)為 content 微博內(nèi)容。調(diào)用時(shí)必須以數(shù)組鍵值對(duì)方式把參數(shù)傳遞進(jìn)去,否則會(huì)報(bào)錯(cuò)說沒提供參數(shù)。
$qc = new QC('你的access_token', '你的openid'); $weibo = [ 'content' => '微博內(nèi)容' ]; $result = $qc->add_t($weibo);
(2)發(fā)布帶圖片微博的接口 add_pic_t:必需參數(shù)為 content 微博內(nèi)容,和 pic 微博圖片。調(diào)用時(shí)同樣以鍵值對(duì)方式傳參。而且,圖片是以二進(jìn)制流的形式上傳的。而文檔中有關(guān)它的接口示例,我始終沒找到。最后,我采用了 CURLFIle 類實(shí)現(xiàn)圖片流上傳。
$qc = new QC('你的access_token', '你的openid'); $weibo = [ 'content' => '微博內(nèi)容', 'pic' => new CURLFile('要上傳的圖片路徑') ]; $result = $qc->add_pic_t($weibo);
注意到 pic 參數(shù)值為 CURLFile 類的實(shí)例(圖片路徑最好是絕對(duì)路徑)。網(wǎng)上有些資料介紹了 file(image_path) 和 file_get_contents(image_path) 方式設(shè)置 pic 參數(shù),但我這里都沒有成功(微博發(fā)布成功,但沒有圖片)。
小結(jié)
主要的坑就這兩個(gè),審核平臺(tái)問題和微博圖片上傳問題。以后可能還會(huì)用,所以在這里作以記錄,備忘。
以上這篇淺談PHP接入(第三方登錄)QQ登錄 OAuth2.0 過程中遇到的坑就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持綠夏網(wǎng)。