渠道方對比
LINE 接入授權
LINE 淨係支援 qrcode 登入。QR URL 同 PIN 唔會喺同步回應度返,而係經 webhook 非同步落,再由 session 資源俾呼叫端攞。
qrcode
LINE QR 登入:QR URL 同 PIN 非同步到達。監聽 webhook 嘅 account.auth.required 事件,或者 poll /auth/session 讀 auth_payload.url(QR 圖)同 auth_payload.pin。
- 1. POST /v1/accounts,provider=line、auth_mode=qrcode;可以加 metadata.device_login_type(例如 DESKTOPMAC)。
- 2. POST /v1/accounts/{account_id}/auth/qr/start,叫 LINE provider 開登入會話。
- 3. 等 webhook 嘅 account.auth.required 事件。平台同時會將 auth_payload.url(QR 圖)同 auth_payload.pin cache 喺帳號上面,可以經 /auth/session 同步讀到。
- 4. GET /v1/accounts/{account_id}/auth/session 攞 QR URL 同 PIN 出嚟畀使用者睇,同時輪詢 qr/check。
- 5. account.auth.succeeded 到嗰陣 provider_account_ref 會自動填好,叫 POST /v1/accounts/{account_id}/runtime/start 上線。
metadata.device_login_type— 可選嘅裝置識別字串,例如 DESKTOPMAC、DESKTOPWIN,會原樣傳俾 LINE provider 用嚟起 QR 會話。
備註
- QR URL 同 PIN 唔會喺 qr/start 嘅回應度返,而係之後以 account.auth.required webhook 事件非同步下發。可以 GET /auth/session 或者喺 webhook 入面接。
- PIN 淨係畀前端顯示,唔會回傳 LINE。擺喺 QR 旁邊俾使用者確認佢掃緊邊一台。
- account.auth.succeeded 到嗰陣 provider_account_ref 會自動填好,事件入面仲會帶上標準 profile 欄位(display_name、picture_url、region、status_message)。