快應(yīng)用 QQ賬戶

2020-08-08 15:42 更新

接口聲明

{
    "name": "service.qqaccount",
    "params": {
        "appId": "your app id",
        "clientId": "you client id"
    }
}

參數(shù)

參數(shù)值 類型 說明
appId String 騰訊開放平臺(tái) 申請(qǐng)移動(dòng)應(yīng)用時(shí)分配的appId
clientId String QQ互聯(lián)申請(qǐng)網(wǎng)頁(yè)應(yīng)用時(shí)分配的clientId

導(dǎo)入模塊

import qqaccount from '@service.qqaccount' 
或 
var qqaccount = require("@service.qqaccount")

接口定義

qqaccount.getType()

獲取當(dāng)前的 QQ 登陸方式

參數(shù):

返回值:

返回值 備注
NONE 當(dāng)前無可用的 QQ 登陸方式
APP QQ 的 app 登陸方式,使用在 騰訊開放平臺(tái) 注冊(cè)信息進(jìn)行登陸,參考 QQ文檔
WEB QQ的網(wǎng)頁(yè)登陸方式,使用 QQ互聯(lián) 的注冊(cè)信息進(jìn)行登陸,參考 QQ文檔

qqaccount.authorize(OBJECT)

發(fā)起qq登陸,不同的登陸方式下,應(yīng)該傳入不同的參數(shù),調(diào)用之前應(yīng)該先使用getType函數(shù)查詢當(dāng)前的登陸方式.

參數(shù):

參數(shù)名 類型 必填 說明
state String client 端的狀態(tài)值。用于第三方應(yīng)用防止 CSRF 攻擊,成功授權(quán)后回調(diào)時(shí)會(huì)原樣帶回。請(qǐng)務(wù)必嚴(yán)格按照流程檢查用戶與 state 參數(shù)狀態(tài)的綁定。app 方式下不使用該參數(shù)
redirectUri String 授權(quán)回調(diào)地址,APP方式下,不使用該參數(shù)
scope String 請(qǐng)求用戶授權(quán)時(shí)向用戶顯示的可進(jìn)行授權(quán)的列表??商顚懙闹凳?nbsp;API文檔 中列出的接口,以及一些動(dòng)作型的授權(quán)(目前僅有:do_like),如果要填寫多個(gè)接口名稱,請(qǐng)用逗號(hào)隔開。
success Function 成功回調(diào)
fail Function 失敗回調(diào)
cancel Function 取消回調(diào)

success返回值:

參數(shù)名 類型 說明
url String QQ回調(diào)給出的完整url,僅在網(wǎng)頁(yè)方式下會(huì)返回
code String 用于換取accessToken的Authorization_Code,僅在網(wǎng)頁(yè)方式下會(huì)返回,通過code換取AccessToken的方法參考 QQ的文檔
state String 原始的state值,僅在網(wǎng)頁(yè)方式下會(huì)返回
openId String QQ登陸后給該用戶的唯一標(biāo)示,僅在app方式下會(huì)返回
accessToken String 用于訪問api的accessToken,僅在app方式下會(huì)返回
expiresIn Number accessToken的有效時(shí)長(zhǎng),以秒為單位

fail返回錯(cuò)誤代碼:

錯(cuò)誤碼 說明
1000 來自QQ的未知錯(cuò)誤

示例

useQQLogin: function() {
    var type = qqaccount.getType();
    if (type == 'APP') {
        qqaccount.authorize({
            scope: 'all',
            success: function(data) {
                console.log("qqaccount authorize success, data:" + JSON.stringify(data));
            },
            fail: function(data, code) {
                console.log("qqaccount authorize fail, data:" + data + ", code:" + code);
            },
            cancel: function() {
                console.log("qqaccount authorize cancelled.");
            }
        });
    } else if (type == 'WEB') {
        qqaccount.authorize({
            state: 'random2234',
            scope: 'all',
            redirectUri: 'https://your.redirect.url/path',
            success: function(data) {
                console.log("qqaccount authorize success, data:" + JSON.stringify(data));
            },
            fail: function(data, code) {
                console.log("qqaccount authorize fail, data:" + data + ", code:" + code);
            },
            cancel: function() {
                console.log("qqaccount authorize cancelled.");
            }
        });
    } else {
        console.log("qqaccount not available.");
    }
}

后臺(tái)運(yùn)行限制

禁止使用。 后臺(tái)運(yùn)行詳細(xì)用法參見 后臺(tái)運(yùn)行腳本。

支持明細(xì)

廠商支持備注
小米YES-
中興YES僅支持 WEB 方式
華為no-
金立YES-
聯(lián)想no-
魅族YES僅支持 WEB 方式
努比亞YES-
OPPOYES僅支持 WEB 方式
vivoYES僅支持 WEB 方式
一加--
預(yù)覽版YES僅支持 WEB 方式


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)