免费国产精品自在自线-91精品国产色综合久久久浪潮-99热久久免费频精品-国产精品国模在线观看-久久亚洲国产精品成人?V秋霞-久久国产一级A片免费播放-亚洲国产欧洲综合97久久-久久国产白嫩美女呻吟高潮

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

uniapp推送服務(wù)端對接指南:ThinkPHP集成個推REST API V2

uniapp推送服務(wù)端對接指南:ThinkPHP集成個推REST API V2 簡介這是一套面向 uniapp 開發(fā)者的移動端推送功能完整后端實現(xiàn)資源核心解決 uniapp 項目中集成 unipush 與個推 SDK 的服務(wù)端接口設(shè)計問題。內(nèi)容基于 Thinkphp RestAPI V2 構(gòu)建覆蓋客戶端設(shè)備注冊、Token 上報、服務(wù)端調(diào)用個推 API 發(fā)送通知、結(jié)果反饋與異常重試完整鏈路適合具備基礎(chǔ) PHP 和 uniapp 知識、希望快速落地推送模塊的中高級開發(fā)者參考。壓縮包共 40 個文件以 37 個 PHP 源碼為主包含 GeTui.php、GTPushApi.php、GTClient.php 等 SDK 封裝與接口實現(xiàn)另有 README、license 及 composer.json 輔助說明包體僅 42KB體積小巧、結(jié)構(gòu)清晰可按模塊直接引入項目二次開發(fā)。資源已獲得 3754 人學(xué)習(xí)兼具實戰(zhàn)代碼與集成思路能幫助讀者省去排查官方文檔和聯(lián)調(diào)的時間快速理解 unipush 與個推服務(wù)端的鑒權(quán)、推送及回執(zhí)處理流程。1. uniapp 用 uniPush 做推送卡住你的往往是服務(wù)端個推SDK和ThinkPHP怎么接“前端明明拿到了cid后端卻始終推不出去”是 uniPush 接入里最典型的隱形門檻。幾乎所有人都會先在前端完成 init卻把真正的推送邏輯——個推 SDK、REST API V2 鑒權(quán)、通知和透傳的報文結(jié)構(gòu)——留到最后才碰。某開發(fā)者接推送時前后端一起寫前端半小時跑通了后端光簽名就調(diào)了一天。后來把 ThinkPHPRestAPI V2 整合成一套完整版服務(wù)端才發(fā)現(xiàn)問題不是“接入”而是“協(xié)議”。這套方案適合正在用 uniapp 做 App、后端用 PHP、想把通知欄消息和透傳消息都走通的開發(fā)者。下面按鏈路拆解到代碼落地再把排查清單放最后照著落地即可。2. 推送鏈路拆解uniPush、個推通道與 ThinkPHP 服務(wù)端的邊界2.1 一次推送從觸發(fā)到展示經(jīng)過了哪幾層先明確鏈路。App 收推送消息時不會由 uniapp 自己從業(yè)務(wù)服務(wù)器拉取而是依賴一個推送服務(wù)商的通道。uniPush 2.0 的前端能力本質(zhì)是把某個推送服務(wù)商的 SDK 封裝成了一套 uniapp 插件前端只需要拿 clientid、監(jiān)聽消息回調(diào)具體的下發(fā)、離線消息存儲、廠商通道接入全部在服務(wù)端和該推送平臺側(cè)發(fā)生。這個鏈路大致是業(yè)務(wù)后端 → 調(diào)個推的 REST API V2 → 個推服務(wù)端按設(shè)備在線狀態(tài)決定走哪條通道 → 在線設(shè)備走個推長連接離線設(shè)備走廠商離線通道比如 APNs、華為推送、小米推送等 → 客戶端收到后交給系統(tǒng)通知欄或進入監(jiān)聽回調(diào)。明白這個層級就能理解為什么“推送不顯示”不一定是你代碼寫錯而是廠商通道沒配置好。在線消息走個推長連接只要手機網(wǎng)絡(luò)通暢后臺發(fā)送幾乎即時到達(dá)熄屏后應(yīng)用進程被系統(tǒng)殺掉消息就要靠廠商通道接力這一步依賴你在個推后臺申請的廠商推送服務(wù)以及 App 打包時的證書、包名、簽名設(shè)置。這些雖然是前端工作之外的事但服務(wù)端對接哪個通道、選擇什么報文直接影響送達(dá)率。2.2 為什么不建議直接用官方 SDK 裸寫很多 PHP 后端第一次做推送會以為引入個推官方 SDK拿到 appId 和 appKey 就可以直接 new 一個客戶端推一把。實際上 SDK 封裝得再好接入時仍然要面對三個問題token 有效期管理、返回碼處理、業(yè)務(wù)側(cè)推送記錄落庫。直接在業(yè)務(wù)方法里 new 一個推送對象token 請求會重復(fù)發(fā)生往往一天下來會把當(dāng)天配額耗在半數(shù)以上。另外一個推送服務(wù)不止“發(fā)一條消息”。實際項目里通常有單推、cid 批量推、按條件推、透傳消息還要求通知點擊后有回調(diào)落地。如果所有推送邏輯都散落在 controller 里修改簽名算法或加個模板字段就要到處找。常見做法是抽出一個獨立的 PushService 類負(fù)責(zé) token 緩存、報文組裝、網(wǎng)絡(luò)請求、落庫回執(zhí)controller 只管接收參數(shù)并調(diào)用。選擇 ThinkPHPRestAPI V2 整合不是為了復(fù)用 TP 的 ORM 那么簡單。TP 自帶的命令行模式可以讓你寫一個php think push:test去手動驗證推送隊列組件可以處理大批量 cid 推送的異步分發(fā)日志組件能記錄每次推送的請求體與返回值。這些對于一個上線后“看得到回執(zhí)”的服務(wù)來說是剛需。2.3 鑒權(quán)參數(shù)與 REST API V2 的簽名規(guī)則開始寫代碼前需要先從推送平臺后臺拿到 appId、appKey、masterSecret 三項。appId 標(biāo)識應(yīng)用appKey 是開放平臺應(yīng)用標(biāo)識masterSecret 是服務(wù)端專用密鑰。注意 masterSecret 不能寫在客戶端代碼里也不能隨前端打包下發(fā)否則等于把服務(wù)器鑰匙放進用戶手機里。REST API V2 的 token 獲取過程是用 appKey、appId 和 timestamp 算出一個簽名然后 POST 到鑒權(quán)接口。簽名這里最容易出錯。我一開始用 sha1、用的是秒級時間戳、拼接順序搞錯白白調(diào)試一個多小時。正確的規(guī)則是按固定順序做字符串拼接appKey appId timestamp做 sha256timestamp 取毫秒級時間戳。這里有個玄學(xué)點有些接口文檔寫的是 timestamp 毫秒有些示例卻是秒如果服務(wù)端返回時間戳相關(guān)錯誤第一反應(yīng)就是查單位。我們后面代碼里統(tǒng)一用 13 位毫秒。token 拿到后有效期默認(rèn)是一段時間可以緩存在 think\Cache 里避免每次推送前都重新鑒權(quán)。提示masterSecret 泄露后記得去后臺重置否則任何人都能調(diào)你的接口給你的用戶發(fā)垃圾消息。3. ThinkPHPRestAPI V2 服務(wù)端實現(xiàn)從數(shù)據(jù)庫到推送報文3.1 數(shù)據(jù)庫表設(shè)計與接口約定推送服務(wù)端先要把數(shù)據(jù)模型定下來。單推要記錄 cid、標(biāo)題、內(nèi)容、taskId、推送結(jié)果批量推還要記錄任務(wù)批次、總條數(shù)、成功條數(shù)。實際項目通常建一張 push_log 表關(guān)鍵字段如下。CREATE TABLE push_log ( id int(11) NOT NULL AUTO_INCREMENT, cid varchar(64) NOT NULL DEFAULT COMMENT 客戶端唯一標(biāo)識, title varchar(128) NOT NULL DEFAULT COMMENT 通知標(biāo)題, content text COMMENT 通知內(nèi)容, payload text COMMENT 透傳數(shù)據(jù)JSON字符串, task_id varchar(64) NOT NULL DEFAULT COMMENT 個推返回的任務(wù)ID, status tinyint(1) NOT NULL DEFAULT 0 COMMENT 0處理中 1成功 2失敗, error_msg varchar(255) NOT NULL DEFAULT COMMENT 失敗原因, create_time int(11) NOT NULL, update_time int(11) NOT NULL, PRIMARY KEY (id), KEY idx_cid (cid), KEY idx_task_id (task_id) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COMMENT推送記錄表;cid 字段對應(yīng) uniapp 端 uni.getPushClientId 拿到的值一個 App 安裝一次會生成一個或多個 cid具體數(shù)量取決于不同端的通道注冊情況。task_id 是個推服務(wù)端返回的任務(wù)標(biāo)識用于后續(xù)查詢送達(dá)回執(zhí)。status 字段不能只存成功和失敗要加一個處理中因為批量推送是異步任務(wù)接口返回 code 為 0 不代表每條都送達(dá)。接口約定上我會設(shè)計三個 RestAPI 風(fēng)格端點單推、批量推、透傳。單推和透傳解耦開來前端業(yè)務(wù)上“點擊通知打開頁面”走通知欄消息payload“靜默更新”走透傳消息。這樣前端 onPushMessage 回調(diào)可以區(qū)分消息類型。3.2 封裝 PushServicetoken 獲取與緩存下面的 PushService 是我習(xí)慣用的結(jié)構(gòu)核心是 getAccessToken 方法和 sendSingle 方法。先看鑒權(quán)部分。?php namespace app\common\service; use think\facade\Cache; use think\facade\Log; class PushService { private $appId; private $appKey; private $masterSecret; private $baseUrl https://restapi.example.com/v2; public function __construct() { $this-appId config(push.app_id); $this-appKey config(push.app_key); $this-masterSecret config(push.master_secret); } public function getAccessToken() { $cacheKey push_token_ . $this-appId; $token Cache::get($cacheKey); if ($token) { return $token; } $timestamp (string)(time() * 1000); $sign hash(sha256, $this-appKey . $this-appId . $timestamp); $url $this-baseUrl . / . $this-appId . /auth; $body [ sign $sign, timestamp $timestamp, appkey $this-appKey ]; $result $this-httpPost($url, $body); if (isset($result[code]) $result[code] 0) { $data $result[data]; Cache::set($cacheKey, $data[token], 60 * 60); return $data[token]; } Log::error(push auth fail: . json_encode($result, JSON_UNESCAPED_UNICODE)); return null; } private function httpPost($url, $params) { $ch curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($params)); curl_setopt($ch, CURLOPT_HTTPHEADER, [Content-Type: application/json]); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_TIMEOUT, 10); $response curl_exec($ch); curl_close($ch); return json_decode($response, true); } }這段代碼里 token 緩存是重點。Cache::set 往 think 的緩存通道里寫一小時有效一小時到期后重新獲取避免每個請求都觸發(fā)一次 auth。timestamp 拼接成毫秒時間戳后轉(zhuǎn)成字符串避免 PHP 整數(shù)溢出。httpPost 方法里設(shè)了 10 秒超時推送接口在弱網(wǎng)下偶發(fā)慢響應(yīng)超過 10 秒就返回。這個超時可以按業(yè)務(wù)接受度調(diào)整但不要設(shè)置成 0否則 curl 會一直等ThinkPHP 的請求隊列會積壓。auth 接口的返回結(jié)構(gòu)是 code 為 0 時data 里帶 token。如果 code 非 0通常錯誤信息里會明確提示 sign 問題還是 timestamp 問題。我第一次調(diào)通后發(fā)現(xiàn)錯誤提示簽名校驗失敗檢查后發(fā)現(xiàn)是把 appId 和 appKey 拼反了。這個接口對拼接順序高度敏感不是 sha256 算法選錯是原材料順序錯了。3.3 單推、cid 批量推與透傳消息完整請求報文token 拿到后推送才是最要命的。個推 REST API V2 的單推端點根據(jù) cid 走批量推送可以傳多個 cid這里給出我驗證過的報文組裝方式。public function sendSingle($cid, $title, $content, $payload []) { $token $this-getAccessToken(); if (!$token) { return [code -1, msg token獲取失敗]; } $requestId uniqid(, true); $url $this-baseUrl . / . $this-appId . /push/single/cid; $notification [ title $title, body $content, click_type payload, payload json_encode($payload, JSON_UNESCAPED_UNICODE) ]; $body [ request_id $requestId, audience [cid [$cid]], push_message [ notification $notification ], push_channel [ android [ ups [ notification $notification ] ], ios [ apns [ aps [ alert [ title $title, body $content ] ], payload json_encode($payload, JSON_UNESCAPED_UNICODE) ] ] ] ]; $result $this-httpPostWithToken($url, $body, $token); $this-logPush($cid, $title, $content, $payload, $result); return $result; }這里最關(guān)鍵的字段是 click_type。當(dāng)設(shè)置為 payload 后用戶點擊通知欄消息時App 會收到透傳 payload可以由此跳轉(zhuǎn)到具體頁面。如果你不設(shè)置它點擊通知只會打開 App不能拿到跳轉(zhuǎn)參數(shù)。Android 通道里我把 notification 重復(fù)放在 push_channel.android.ups 下面這是廠商通道的消息體和頂層 push_message.notification 并存。iOS 走 apns 的 alert 字段payload 作為一個自定義鍵傳給客戶端。注意 request_id 要保證每次推送唯一個推后臺會用它做消息去重和任務(wù)追蹤。遇到同一內(nèi)容重復(fù)推送時如果你沿用同一個 request_id個推可能直接丟棄。我見過一次線上重復(fù)推送查了半天才發(fā)現(xiàn)是代碼里把 request_id 寫死了。uniqid(, true) 足夠日常使用并發(fā)高時可以在后綴拼接隨機數(shù)。批量推送端點類似只是把 url 換成批量 cid 端點。批量推不要循環(huán)調(diào)用 sendSingle否則每個 cid 都會觸發(fā)一次 token 校驗和 HTTP 請求批量 1000 個 cid 就會產(chǎn)生 1000 個請求。正確做法是讓接口一次提交多 cid 到批量端點。public function sendBatch($cidList, $title, $content) { $token $this-getAccessToken(); $requestId uniqid(batch_, true); $body [ request_id $requestId, audience [cid $cidList], push_message [ notification [ title $title, body $content ] ], push_channel [ android [ups [notification [title $title, body $content]]], ios [apns [aps [alert [title $title, body $content]]]] ] ]; return $this-httpPostWithToken($this-baseUrl . / . $this-appId . /push/list/cid, $body, $token); }批量推送的返回結(jié)構(gòu)與單推一致都會返回 taskId但離線推送狀態(tài)還要等廠商回執(zhí)。批量接口一次提交的 cid 數(shù)量有上限控制我習(xí)慣每 500 個 cid 拆成一批避免單次請求體過大。拆批邏輯放在控制器層批量任務(wù)入口負(fù)責(zé)切分循環(huán)調(diào)用 sendBatch。透傳消息和通知消息的最大區(qū)別是沒有 notification 字段客戶端收到 message 后不展示系統(tǒng)通知而是直接把 payload 傳給 uniPush 回調(diào)。場景是 App 靜默更新緩存、刷新數(shù)據(jù)、狀態(tài)同步。發(fā)送方式和單推相同端點只是 push_message 里只放 transmission 字段。$body [ request_id uniqid(trans_, true), audience [cid [$cid]], push_message [ transmission json_encode($payload, JSON_UNESCAPED_UNICODE) ], push_channel [ android [ups [transmission json_encode($payload, JSON_UNESCAPED_UNICODE)]], ios [apns [aps [content-available 1]]] ] ];透傳在 iOS 端要注意content-available 設(shè)為 1 表示后臺靜默推送這種推送不一定每次都會喚醒 App蘋果對靜默推送有頻率限制。不要把關(guān)鍵業(yè)務(wù)數(shù)據(jù)完全押在靜默推送的送達(dá)上有價值的消息仍要發(fā)通知欄消息并附加 payload。3.4 推送落庫與結(jié)果判斷前面 sendSingle 方法里調(diào)用 logPush 做了落庫這個步驟不能省。推送請求返回后先用 code 判斷接口級成功再記錄 taskId狀態(tài)置為處理中。等個推的回執(zhí)回調(diào)打過來后再更新 status 為最終狀態(tài)。private function logPush($cid, $title, $content, $payload, $result) { $data [ cid $cid, title $title, content is_array($content) ? json_encode($content) : $content, payload json_encode($payload, JSON_UNESCAPED_UNICODE), task_id isset($result[data][taskId]) ? $result[data][taskId] : , status isset($result[code]) $result[code] 0 ? 0 : 2, error_msg isset($result[msg]) ? $result[msg] : , create_time time(), update_time time() ]; \think\facade\Db::name(push_log)-insert($data); }為什么接口返回成功仍然置為“處理中”這是個推的重要特點。單推時接口返回成功表示消息已接受但送達(dá)回執(zhí)是異步的尤其離線消息要等廠商通道確認(rèn)快則秒級慢則幾分鐘。如果直接把 status 置為成功你看到的是“已發(fā)送”而不是“已收到”后面排查送達(dá)率時數(shù)據(jù)全假?;貓?zhí)接口可以單獨開發(fā)通過 push_log 里的 task_id 去匹配對應(yīng)記錄。如果 code 不為 0error_msg 里會直接給失敗原因。比較常見的是 cid 不存在、應(yīng)用被卸載、token 過期。此時狀態(tài)置為 2后續(xù)腳本可以篩出這些失敗 cid 做清理。我的習(xí)慣是每天跑一次定時任務(wù)把近七天的失敗記錄按 cid 分組確認(rèn)無效 cid 就從用戶表里解綁避免每輪推送都對著無效 cid 空打。4. 前端聯(lián)調(diào)與避坑排查cid拿不到、熄屏收不到、廠商通道限制4.1 uniapp 端 cid 獲取與上報后端準(zhǔn)備好之后前端要確保 cid 正確傳到服務(wù)端。在 uniapp 的 App 生命周期里調(diào)用 uni.getPushClientId 獲取 clientid然后 POST 到我們自己的接口。代碼不復(fù)雜但要注意調(diào)用時機。要在 manifest.json 里勾選 uniPush 并配置好相關(guān)參數(shù)后再調(diào)用獲取方法否則拿到的可能是空。async function bindPush() { const res await uni.getPushClientId(); const cid res.cid; if (cid) { uni.request({ url: https://api.yourdomain.com/api/push/bindCid, method: POST, data: { cid: cid, userId: uni.getStorageSync(userId) }, success: (resp) { console.log(cid綁定成功, resp.data); } }); } } uni.onPushMessage((res) { if (res.type click) { // 用戶點擊通知欄消息payload在這里 console.log(click payload, res.payload); } else if (res.type message) { // 在線消息或透傳消息 console.log(message, res.payload); } });bindPush 方法應(yīng)在 App 啟動時調(diào)用且 cid 可能隨登錄用戶變化所以用戶切換登錄后要重新綁定一次。這里的 bindCid 接口后端要處理“一個 userId 多個 cid”的情況因為同一個用戶可能在不同設(shè)備登錄每臺設(shè)備會生成不同 cid。簡單做法是綁定表里插入一條記錄設(shè)備下線時調(diào)用 unbind。onPushMessage 回調(diào)里的 type 很關(guān)鍵。消息退了通知欄后用戶點擊回調(diào) type 是 clickApp 在前臺收到的消息走 message。有些開發(fā)者把業(yè)務(wù)跳轉(zhuǎn)邏輯全寫在 message 分支結(jié)果點擊通知時沒有任何反應(yīng)就是因為 click 分支沒處理。4.2 熄屏收不到消息廠商通道參數(shù)與簽名這是接入過程中血淚經(jīng)驗最多的地方。App 在后臺或熄屏?xí)r系統(tǒng)會殺死應(yīng)用進程長連接斷掉個推自己的通道無法直接通信必須靠華為、小米、OPPO、vivo、魅族或蘋果 APNs 的離線通道送達(dá)。個推的 REST API V2 能不能走通廠商通道取決于你在推送平臺后臺填寫的廠商推送配置以及服務(wù)端報文里 push_channel 下的 android 或 ios 內(nèi)容是否完整。從現(xiàn)象上講同一套后端代碼App 在前臺時每次都能收到鎖屏過幾分鐘再解鎖就發(fā)現(xiàn)消息不見了。這不是代碼邏輯問題是廠商通道沒申請下來或者申請下來但簽名對不上。Android 各廠商要求 App 簽名證書 sha256 值必須在廠商推送平臺登記否則廠商服務(wù)器直接拒絕下發(fā)。你的 App 打包若使用云打包需要確認(rèn)云打包用的證書與申請廠商通道時填寫的簽名一致。很多人開發(fā)階段用調(diào)試證書申請了通道后來換成正式證書打包忘記更新廠商平臺的指紋信息測試時就會出現(xiàn)這個翻車現(xiàn)場。iOS 端呢推送走 APNs 時對證書或 token 要求更嚴(yán)格。如果收不到推送先看官方的 device token 有沒有成功傳給個推后臺再看 APNs 的 p12 證書過期沒有。證書過期不會報錯只是靜默丟棄消息后端的 taskId 顯示已發(fā)送但實際沒有送達(dá)。4.3 常見問題排查清單現(xiàn)象→原因→解決以下幾條是從調(diào)通到上線過程里最常見的坑把現(xiàn)象和根因與處理辦法按固定格式整理出來方便直接對照。現(xiàn)象一前端拿到的 cid 為空。 原因manifest.json 中 uniPush 配置沒打開或 App 端還沒觸發(fā)初始化。 解決檢查 manifest 配置確認(rèn) App 端使用 apk 包調(diào)試而不是 HBuilderX 模擬器預(yù)覽重新打包后再調(diào)用 getPushClientId。現(xiàn)象二推送接口返回 code 為 0但手機收不到任何消息。 原因應(yīng)用殺進程后離線廠商通道配置缺失或簽名指紋不匹配。 解決先讓 App 處于前臺測試一次能收到說明在線通道正常再鎖屏測試仍能收到則回到廠商通道配置排查?,F(xiàn)象三Android 8.0 以上設(shè)備收不到通知但低版本手機正常。 原因Android 8.0 開始通知必須有 channelId個推在部分廠商通道需要指定 notification channel否則系統(tǒng)直接丟棄。 解決在推送報文的 android.ups.notification 里增加 channel_id 字段并在 App 端提前創(chuàng)建同名的通知渠道?,F(xiàn)象四同一臺設(shè)備登錄兩個賬號后推送綁到舊賬號。 原因cid 是設(shè)備維度賬號切換時沒有重新走 bindCid 邏輯。 解決切換登錄后前端主動調(diào)用 bindCid把新的 userId 重新綁定到同一 cid后端綁定表采用 userIdcid 聯(lián)合更新。現(xiàn)象五點擊通知沒有觸發(fā)回調(diào)App 只是被打開。 原因payload 沒有放在 click_type 對應(yīng)的字段里或 Android 廠商通道用了你自己的廣告跳轉(zhuǎn)。 解決確認(rèn)通知里 click_type 為 payloadpayload 為 JSON 字符串并在 onPushMessage 的 click 分支解析不要寫在 message 分支里。注意真正排查“送達(dá)率”問題后端 taskId 只是入口回執(zhí)回調(diào)才是出口。只盯發(fā)送成功會漏掉一半問題。5. 把推送測試變成自動化CLI命令與回執(zhí)核對習(xí)慣推送接口在開發(fā)期調(diào)試時最忌諱在 uniapp 頁面里寫一個按鈕去觸發(fā)送推送。前端剛跑起來就要啟動模擬器、登錄、綁定 cid麻煩且容易誤導(dǎo)。正確做法是在 ThinkPHP 里寫一個命令行指令直接傳 cid、標(biāo)題、內(nèi)容觸發(fā)推送服務(wù)這樣每次聯(lián)調(diào)只需一行命令。?php namespace app\command; use app\common\service\PushService; use think\console\Command; use think\console\Input; use think\console\Output; use think\console\input\Option; class PushTest extends Command { protected function configure() { $this-setName(push:test) -addOption(cid, null, Option::VALUE_REQUIRED, 設(shè)備cid) -addOption(title, null, Option::VALUE_REQUIRED, 通知標(biāo)題) -addOption(body, null, Option::VALUE_OPTIONAL, 通知內(nèi)容, test); } protected function execute(Input $input, Output $output) { $cid $input-getOption(cid); $title $input-getOption(title); $body $input-getOption(body); $pushService new PushService(); $result $pushService-sendSingle($cid, $title, $body, [page /pages/index/index]); $output-writeln(推送返回 . json_encode($result, JSON_UNESCAPED_UNICODE)); } }這個命令的方便之處在于不依賴任何登錄態(tài)拿到一個真實設(shè)備 cid 就能即刻驗證后端改動。推送結(jié)果直接顯示在終端里返回的 taskId 可以復(fù)制到推送平臺后臺的任務(wù)列表里查詢送達(dá)狀態(tài)。我平時調(diào)廠商通道參數(shù)就是靠它改一次報文跑一次命令省掉前端打點的時間。驗證“是否真的送達(dá)”還有一個習(xí)慣不要在收到 code 為 0 后就開始改下一個需求。等推送返回后我會等十秒再掃一遍 push_log主動查一下回執(zhí)狀態(tài)。如果回執(zhí)狀態(tài)遲遲不更新就去后臺看 taskId 的詳情確認(rèn)是卡在廠商通道還是已經(jīng)確認(rèn)送達(dá)。這種看起來很麻煩的流程其實能救你于上線第二天的“推送失靈”事故。從那以后我每次接入新版本 SDK 或換打包證書都會強制走一遍這個命令測試再重查一次回執(zhí)確認(rèn)回執(zhí)狀態(tài)里展示的是廠商通道的成功回執(zhí)才敢把改動提交。希望這套鏈路和排查思路幫到你。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
天天爽日日搞| 99综合网| 91久久精品无码一区二区三区| 激情五月天 婷婷| 精品夜夜澡人妻无码AV| 日本久久99| 婷婷激情丁五月| 日韩AV在线免费观看| 少妇AB又爽又紧无码网站| 思思热精品在线| 亚洲激情高潮| 色激情综合狠狠婷婷| 91伦| 亚洲五月六月婷婷| 欧美韩国日本| 亚洲乱码精品久久久久..| 九九色综合九九色| 天堂AV在线看| 婷婷激情五月天在线| 色丁香五月婷婷| 五月天婷婷五月| 97久久视频| 《丁香激情综合久久伊人久久》影视在线观看 -高清预告手机免费播放 -三妹影院 | 久久曰曰| 综合激情在线视频| 98色花堂98t.R| 五月激情综合深爱| 色婷婷色人人射| 五月天婷婷色| 激情婷婷丁香五月天小说| 丁香五月天激情综合| 丁香婷婷激情五月| 久久 这里只有精品1| 久久XX| 五月婷啪啪| 日逼影音先锋AV男人资源站| 夜色.cnm| 综合色婷婷| 久久综合站| 亚洲无AV在线中文字幕| 91精品国产综合久久久不卡电影| 婷婷的五月天另类视频| 久久久久9久无码视频| 色999亚洲人成色| 五月天丁香综合| 五月六月婷| 婷婷综合干| 激情五月黄色| 婷婷综合干| 婷婷综合中文字幕| 婷婷丁香五月天大香蕉| 日韩九区| 激情综合婷婷| 婷婷五月天综合在线 | 91偷拍视频| 99这里热| 国产精品大香蕉| 日本天天操| 97色色视频| 99精品视频网站| 婷婷五月丁香综合| 五月天中文网| 免费精品99| 婷婷五月六| 五月婷激情| 五月丁香啪啪啪| 日本久久精品18| 亚洲九区| 色情成人五月天| 在线成人av播放| 色五月婷婷激情基地| 九热免费视频| 丁香五月狠狠综合欧美| 色日本综合| 人人澡玖玖一| 新激情婷婷| 大香蕉丁香五月| 丁香婷婷久久综合在线| 婷婷五月天成人五月天| 久久六月天| 欧美五月婷婷| 99思思热只有在这里看| 91色色色| 9 1大香蕉| 伊人www22综合色| www,8050,午夜三级| 丁香五月婷婷国产av| 激情婷婷丁香| 色婷婷久久综| 天天干夜夜欢| 丁香五月婷婷在线| 97AV人人插人人操| 小视频在线亚洲| 色噜噜在线| 丁香六月激情国产| 99在线精品免费视频| 大香蕉在线99热| 久婷久婷激情肉| 这里有精品99| 五月婷婷丁香| 涩五月婷婷| 五月天婷婷丁香| 成人丁香婷婷| 色婷婷五月天av在线| 五月婷婷影视| 亚洲综合五月天| 97碰碰免费.视频| AV在线免费网站| 六月婷婷日| 99视频在线观看网址| 五月天婷婷在线AN| 婷婷五月色情| 婷婷五月天激情网站| 天天日综合网射| 五月婷婷丁香大陆免费| 九九99久久| 超碰伊人碰婷婷五月| 伦乱美欧| 成人精品在线| 日本99久久| 一本色道久久88加勒比—| 99色色热| 色播播五月天| 五月丁香久久综合| 99综合视频| 丁香五月婷婷Av| 综合色综合| 天天做夜夜爽| 在线va网站| 色五月偷偷| 五月婷婷av在线| 色婷婷网| 五月丁香影院| 丁香五色月婷婷网| 这里只有精品视频在线| 丁香色啪综合| 婷婷丁香无码专区| 天天爽天天草| 色综合狠狠色| 97色婷| 99综合熟女| 97艹| 五月婷婷熟女| 九九RE视频在线精品| 五月天六月色| 丁香六月色婷婷| 久久99综合网| 只有精品在线观看| 少妇人妻丰满做爰XXX| 五月天激情黄色小说在线观看| 伊人婷婷色| 色婷婷色五月综合| 婷婷五月丁香综合| 成人色五月天| 日韩有码一区| 玖玖婷婷五月| 欧美狠狠草| 婷婷五月情| 另类专区在线观看| 内射人妻视频国内| 久久人妻www| 狠狠色婷婷综合开心影视| 婷婷丁香五月天大香蕉| 婷婷操超碰| 一月婷婷色色| 极品少妇XXXX精品少妇偷拍| 天天激情视频| 天天日天天色| 丁香五月天殴美激情| 120分钟婬片免费看| 99操99| 亚洲激情AV| 久久99久久久久久| 97色色网| 伊人午夜综合色啪| 碰碰碰91| 婷婷丁香五月麻豆| 久久婷婷国产| 99精品在线播放| 天天影院色| 丁香五月六月久久综合| 99玖玖精品| 伊人网碰碰| 亚洲五月天色| 婷色五月天| 天天爽夜夜爽夜夜爽精品| 99在线观看| WWW.桔色成人.COM入口| 狠狠se| 成人五月丁香社区| 色天天综合| 久久最新色| 五月婷婷五月天| 最新亚洲色色网| 大香AV| 丁香五月在线观看| 久久精品人妻| site:ornaments52.com| 天天射美女| 日韩免费视频| 亚洲视频五区| 六月婷婷在线| 性爱111111| 超碰色综合| 九九热在线观看视频网站| a毛片二逼wwwwwwwwww| 久久婷丁香五月| 色综合色欲综合天天免费| 极品嫩草| 精品国产一区二区三区四区阿崩| 婷婷精品在线| 激情六月天婷婷| 伊人五月婷婷| www.色婷婷| 婷婷酒色网| 91久操| 26uuu国产激情视频| 秋霞成人毛片一级A片| 日本少妇裸体做爰高潮片| 五月天伊人| 六月丁香婷婷色综合| 一起草无码| 春色激情| 久色婷婷200| 激情婷婷综合| 五月天婷五月天综合网小说首页-五月天激激婷婷大综合,婷婷亚洲综合五月天小说 | www.夜夜操.con| 在线观看视频1区| 日本3级片一区2区| 激情五月www| 婷婷射图| 91美女被操| 内射在线CHINESE| 五月丁香无码| 五月婷婷色影院| 91热手机在线| www.一起草av| 色色日本欧美| 日韩在线观看亚洲| 全高清无码视頻| 激情婷婷99| 丁香,开心成人,久久| 婷婷五月天久久久| 91超碰人人操| 亚洲综合激情五月久久| 熟女人妻一区二区三区免费看| 五月天激情站| 五月婷婷综合网在线播放| 丁香五月婷婷超碰在线| 99热9999| 免费AAAAA网| 婷婷五月播| av网址在线| 天堂色婷婷| 99亚洲视频| 欧美色色色色色色| 激情AV| 99热这里只有精品66| 欧美在线97| 久9久成人精品视频| 五月天久久综合| 丁香五月婷婷黑人妻黄色电影院| 夜色综合网| 天天橾日日橾夜夜橾17| 亚洲亚洲永久无码777777| 狠狠五月激情婷婷直播片| 天天干狠狠操| 色五月在线视频观看| 色综合色综合网| 婷婷婷婷色| 丁香婷婷视频在线| 激情小说视频图片| 丁香五月花影院| 五月天开心色色网| 99九九视频精彩在线| av在线免费网站| 亚洲无码成人| 蜜臀九九九九| www.久久综合| 青青草免费公开视频| 色狠狠色噜噜AV天堂五区| 情婷婷五月天| 99久久久免费| 狠狠操狠狠色| 亚洲另类婷婷综合| 深爱五月亚洲| 狠狠五月激情丁香六月| 日本少妇裸体做爰高潮片| 亚洲精品第一国产综合亚AV | 变态另类9| 五月丁香人妻| 成人 AV播放| www.五月天色色.com| 久久婷婷五月综合97色一本| 婷婷五月天六月| 涩五月婷婷| 天天干狠狠| 99热10在线高清播放| 欧美日韩五月婷婷| 99热这里只有精品23| 天天爽天天摸天天爱| 97碰碰人人| AA片在线观看视频在线播放| 综合色色色| 91男同视频| 99热九九在线| 天天碰天天插天天操| 天天做天天爱天天爽| 狠狠搞狠狠操| 99热丁香| 婷婷五月18永久免费视频| 人人操插| 丁香五月www| 六月婷婷成人| 综合激情在线| 五月天大香蕉视频| 欧美激情2025| 亚洲字幕AV一区二区三区四区| www.99热这里精品| 热成人网| 国产亚洲精品久久久久苍井松 | www色色色com| 97超级碰碰碰| 天天爽天天摸| 98国产精品综合一区二区三区 | 精品色色| 婷婷综合激情五月中文字幕| 丁香婷婷色五月| 久久亭亭电影| 色色 亚洲| 91一起操| 五月天婷亚洲天综合网综合| 操人91| 9色操| 思思热精品免费视频| 欧美精品99久久久| 成人网址在线观看| 天天射美女| 丁香五月熟女| 五月丁香婷婷激情视频| 亚洲丁香婷婷| VfJxEwPH| 色开心五月丁香| 欧美英丁香开心快乐六月天网| 97 A I色色| 天天操天天曰天天射| 婷婷五点亚洲| 俺去婷婷 丁香| 思思精品久久艹| 九九av| 婷婷五月天成人导航| 色五月大| 538任你爽| 综合网啪| 超碰在线看| 色五月91| 性爱动图国产麻豆一区二区三区| 五月天开心激情综合网| 欧美群妇大交乱婬网| 91久久| 久热 91| 五月丁香婷婷深深爱| 91久久18| 免费啪啪亚州视频| 开心婷婷中文字慕| 香蕉久久国产AV一区二区| 天天插综合在线| 久久婷婷精品| 婷婷综合在线观看视频| WWW、日本色丁香、co m| 99re这里| 色色丁香婷婷| 成人视频网| 丁六月激情| 久久AAAA片一区二区| 丁香五月丁香伊人| 色婷亚洲五月丁香| 欧美va在线| 欧美成性色| 欧洲MV日韩MV国产| 狠狠色狠狠操| 99久视频| 九九色情网站| 五月亭亭开心网| 九九热99熟女| 乱精品一区字幕二区| 五月天婷a| 色444综合网| 五月天淫乱视频| 天天看A片| 欧美操人| 人人草人人舔| 婷婷开心青青草| 丁香六月婷婷激情| 99综合在线| 激情综合五月色在线| avh片在线观看| 五月天桃色深爱网| 五月婷婷久久开心网| 五月丁香婷婷激情图片| 99黄色性生活| 99热只有这里才是精品| 婷婷五月激情欧美| 色99综合色88| 99热九九热| 色五月开心开心五月激情五月| 日本欧美999久久久三级片| 九九热re99re6在线精品| 狠狠色丁香综合| 丁香五月桃花在线激情综合| 五月天播播| 深爱激情五月婷婷| 色婷婷五月天天天天天天天天天| 7777精品伊人久久久大香线蕉最新版| 成人无码精品1区2区3区免费看| 五月丁香六月婷婷久久| 婷婷五月天va| 婷婷在线精品| a片在线免费观看一区| 亚洲综合婷婷| 激情综合一| 色五月天综合| 久久久久久久综合狠狠综合| 91精品国产日韩91久久久久久国模| 五月丁香啪啪啪| 四月丁香五月婷婷久久| 天天添天天摸天天天天做| 啪啪丁香五月| www.99热这里精品 | 9 9热这里有精品| www夜夜操| 另类图片五月天| 97婷婷丁香五月| 色色色色色色色色五月先| 婷婷亚洲在线| 一本色道久久88加勒比| 99激情| 亚洲区视频| 五月丁香六月婷婷欧美综合| 色色欧美色色| 99er视频在线| 国产精品久久久久久五月天加勒比| 五月综合色| 五月激情射| 丁香婷婷久久五月天| 大地资源色婷婷视频在线 | 五月六月婷| 开心五月综合激情综合五月| 天天做天天双| 综合色五月天| 黄涩毛片| 丁香五月天激情小说| 久热无码| 久婷婷五月丁香在线观看| 99九无网码| 久xxxx| 中文在线视频久9| 激情五月四色| 久久99免费视频网站| 欧美情色一区| 亚洲色图欧美色图日本视频| 国产成人AV不卡| 亚洲欧洲中文日韩久久AV乱码| 亚洲综合色网| 天天射影院| 丁香五月花| 风流少妇A片一区二区蜜桃| 久久久婷婷婷| 丁香久久在线| 亚洲黄色av网站| 日本在线观看91| 日本欧美999久久久三级片| 大香蕉视频99| 在线资源av-超碰中文在线-成人AV| 色月丁| 91九色视频在线观看| 任我鲁这里有精品视频| 婷婷激情四射| 99热精这里只有精品| 五月丁香六月婷婷a v| 欧美综合五月丁香五月天| 国产精品色一哟哟| 99精品性爱| 九九热99熟女| 99自拍视频在线观看| 成人片黄网站色大片免费毛片| 中文成人在线| 激情淫乱男女| 五月丁香久人妻中文| 99热日韩这里只有精品| 99热这里只有免费精品| 九热精品| 婷婷激情五月呦呦| 五月天丁香久久| 99色在线视频观看| 六月久久狠狠| 婷婷婷婷婷婷婷五月丁香| 久久精品99| 激情五月四色| 色色色国产| 五月天免费色| 97五月天婷婷综合激情网| 九九热婷婷| WWW.天天日| 婷婷五月天激情小说网站| 思思热久热| 五月丁香婷婷无码中文| 丁香六月伊人| www.超碰在线| 中文字幕婷婷在线| 九九热只有这里是精品| 久色视频| 国产精品美女久久久久AV超清| 综合久久伊人| 激情网站综合五月天| 天天天久久人人人合| 日本啪啪天堂| 五月色激情综合网| 丁香五月婷婷呀| 激情图片婷婷丁香五月| 婷婷无五月无码视频| 夜夜大香蕉婷婷丁香| 婷丁香五月天| 五月丁香综合激情| 婷婷五月天毛片| 干亚洲天堂| 五月天激情啪啪| 9久热精品在线视频| 99热在线中文字幕| 九九亚洲视频| 亚洲愉拍99热成人精品| 丁香五月综合婷婷| 激情综合网五月婷婷| 激情综合五| 天天操婷婷| 丁香久久| 日日夜夜九九| 狠狠狠狠狠狠狠狠草| WWW久久久| 国产婷婷久久| 99青青草| 伊人久久丁香狠狠婷婷综合香蕉 | 人人射人人高潮| WWW.久久.COM| 激情五月综亚网| 99热精品无码| 欧美精品999| 丁香在线视频| 色婷婷AⅤ| 99热亚洲精品66| 成人无码精品1区2区3区免费看| 99视频久久| 亚洲午夜一区二区| 99狠狠操一| 亚洲精品激情| 日本在线观看91| 天天做 天天爱| 天天日中文| 久久香蕉婷婷五月天| 五月天综合网| 五月丁香婷婷久久| 亚洲12p| xx色综合| 婷婷D区| 丁香婷婷久久激情| 久久久久亚洲AV综合| 天天色爽| 少妇被下春药玩弄A片| 九九热这里有精品23| 91超级碰| 草AV9999| 97操碰在线97| 五月亭亭网成人在线视频| 97超级碰碰碰久久久| 久久机热这里只有精品| 久草婷婷视频| 五月天婷婷爱| 狠狠综合| 欧美成人AAA片一区国产精品 | 思思热在线视频99| 91人人看| aa久久| 中文字幕黄色片| 99久热这里只有精品| 色色日韩| 夜夜嗨一区二区三区直播内容 | 丁香五月天资源网| 久久99视频| 婷婷性爱| 色五月婷婷久久| 久9无码视频| 五月激情六月综合| 婷婷夜夜夜夜| 99伊人性爱在线影院| 久久色婷婷| 華人性愛AV在線| 俺也去五月婷婷丁| 97色色网| 国产99美少妇| 日韩无码亚欧无码| 婷婷色导航| 欧美婷婷五月无砖| 丁香五月大香蕉AV| 激情综合久久| 人妻久久久久久久| 久久精品色| 日本精品人妻无码77777| 久久人妻伦理| 丁香五月亚洲AV| 丁香五月天大香蕉啪啪| 婷婷五月丁香综合| 天天擼久久擼在线| 丁香五月综合| 久9草在线观看视频| 丁香婷婷五月综合色情| 99re在线这里只有精品视频首页| 五月丁香六月综合基地| 久久se 综合网| 婷婷五月综激情| 青青草护士中出内射-欧美电影在线天堂新版| 伊人九九九久| 综合久| 狠狠干天天日| 色五月天成人在线| 中文字幕在线免费观看视频| 中文字幕成人日韩| 丁香啪啪| 丁香五月婷婷亚洲综合精品| 思思热在线免费视频| 五月天激情综合在线| 久久综合五月情| 日日干天天| 99亚洲视频| 日日撸天天干| 亚洲色涩视频| 色婷婷超碰| 天堂美国久久| 开心五月深爱五月| 激情综合婷婷| 久久久久久人妻| 欧美成人网婷婷综合在线| 中文字幕在线不卡| 久七香蕉| 东北熟女高潮99综合99| 五月丁香婷婷成人网| 色色色色色色色色综合网| 丁香五月天啪啪a日本| 婷婷六月丁香激情综合| 可以免费观看的av网址| www.91操| 美女黄频aⅴ视频| 激情丁香五月综合| 精品国婬伦V无码久久久| 人妻体体内射精一区二区| 99re思思热久久| 99久久www| 色五月天成人| 色五月女| 久久精品只有这| 婷婷丁香色五月久久88| 婷婷五月中文字幕国产| 五月丁香六月婷婷中合网| 日日干五月天婷婷| 伊人婷婷青青cao| 综合网色| 婷婷丁香射射| 六月丁香成人| 翔田千里aV中文字幕| 激情久久四色| 五月婷婷丁香伦理网| 小视频在线亚洲| 婷婷五月蜜桃成人桃色丁香| 婷婷激情五月吧| 狠狠操之狠狠操| 成人五月天婷婷| 天天日日人| 99热国内| 五月天激情小说婷婷基地| 99热九九在线| 九九精品网| 日本色五月婷婷| 午夜九九九九九九九九九九九九九| 丁香婷婷六月| 五月婷网| 激情综合五月| 色色色五月天婷婷| 色99超碰| 9l视频自拍九色9l视频自拍九色9l社区| 五月 成人 婷婷| 婷婷在线免费| 激情五月婷婷在线区| 九六五月天婷婷| 热热久久99| 五月丁香婷婷爱| 大香蕉伊人久久| 色婷婷久久| 春色激情| 亚洲色激情| 丁香久久| 婷婷涩五月天综合| 欧美狠狠色| 五月丁香久久| 婷婷在线中文字幕| 日本乱论99| 婷婷五月天受日本法律保护| 日日夜夜噜噜爽爽| 天天日夜夜| 日韩成人电影AV| 欧美色婷婷| 九九婷婷网五月天| 亚洲第一第二网站| 91se视频| 一起草Av| 午夜电影网VA内射| 人妻综合网| 国产,欧美,学生妹,视频| 99热亚洲综合| 《诡秘之主》在线观看| 草逼大片| 色五月激情网| 中文字幕婷婷在线| 狠狠狠狠免费| 天天肏天天肏天天肏| 婷婷五月天av| 91网站黄| 亚洲 五月 婷婷 成人| www.五月婷婷| 色黄啪啪| 五月丁香婷色| 色五月婷婷色| 婷婷色一二三区波多野结衣| 天天插天天插天天日| 99免费在线| 噼里啪啦完整版中文在线观看| 97日本在线| 另类丁香五月天区图| 91大神操美女| 色五月开心久久网| 色婷婷深爱五月| 99这里有精品视频| 亚洲AV永久无码影院黑人 | 夜夜天天久久婷婷| 久久久久9| 婷婷丁香综合色AV| 激情五月综亚网| 丁香大香蕉| 色五月,婷婷大香蕉| 青青草护士中出内射-欧美电影在线天堂新版 | 色级停停| 精品婷婷五月天| 97色婷婷成人综合在线观看| 99热高清在线| 精品成人a v无码内射| 色五月情| 丁香五月综合色婷婷| 激情久久五月天| www.99热这里精品| 深爱激情丁香五月| 99爱在线| 五月激情婷婷开心| 九九操屄| 99久久99热这里只有精品| 丁香五月天激情综合| 色欲av伊人久久大香线蕉影院| 26uuu亚洲| 色色色丁香| 99爱视频免费看| 国产精品色情AAAAA片软件| 亚洲五月天第一综合干| 亚洲色婷婷| 日韩影院三级| 国产成人综合网| 久久狼人天堂| 五月停亭六月,六月停亭的英语| 色蜜婷婷| 婷婷97碰碰| 色欲五月婷婷| 欧美日本黄色| 婷婷久月| 五月天丁香婷| 精品激情| 国产片天天爽夜夜爽| 97色色色色色| 99丁香五月婷| 成人午夜天| 人人看人人草人人摸| 婷婷五月综合性爱| 九九精品视频在线观看| 日韩 mm 不卡| 五月天婷婷操逼视频| 五月综合激情| 久久精品这里只有精品免费首页| 综合久久婷婷五月丁香| 被强行糟蹋的女人A片| 欧美婷| 91九色 熟| 五月丁香啪啪| 色狠狠综合| 99久久综合| www.五月婷婷久久.com| 蜜乳AV成人| 五月天天天天天天天天天天天婷婷婷| 92国产福利| 色色a| www激情网| 69精品无码一区二区三区| 久久99综合网| 五月婷婷高清| 国内精品免费一区二区2009| 婷婷色综合av| 99热欧美在线观看| 久久九九激情五月天| 色五月人妻| 婷婷五月激情网| 风流少妇A片一区二区蜜桃| 婷婷激情五月天小说| 丁香五月777| 五月婷婷在线免费观看| 五月丁香六月婷婷亚洲| 狠狠色噜噜狠狠| 婷婷丁香五月综合| 色五月女| 五月婷婷在线视频免费观看| 国产97在线日韩亚洲女人被黑人巨大| 综合99久久天天综合| 色五月xxx| 99热99日天天干| 九九色综合| 人人操人人爱丁香五月| 色噜噜狠狠色综合成人网| 天天色情站| 99狠狠| 天天综合五月| 亚洲在线资源| 婷婷五月综合中文字幕| 美日韩成人| 99免费视频网| 五月丁香五月丁香| 九九青草热| 7EzOBIhNq85TO| 九色视频91疯狂| 亚州精品久久久久AV无码| 久久久久8888| 操草草草| 白人荫道BBWBBB大荫道| 九色91视频| 五月婷婷五月天亚洲无码| 97色色综合| 色情五月停停丁香| 天天噜天天爱| 激情性爱五月天| 97sese婷婷| 国产暴力强伦轩1区二区小说| 色在线99| 婷婷五月综合视频免费播放| ,99视频久久| 日本不卡中文字幕| 激情骚五月| 日99网站| 精品久热| 五月天综合网| 五月丁香六月激情| 九九激情视频| 久久久久99精品成人片| 五月天丁香啪啪综合| 非洲一级AV| 六月丁香成人| 怡春院天天干| 99re8热精品免费视频| av九九| 五月天另类视频| 九九色综合网| 日91高清无玛| 可以免费观看的AV| 五月天婷婷影院影院观看| 狠狠狠狠狠草| 天天色天天噜| 清色五月天| 日韩人妻无码一区二区| 丁香六月激情综合| 久九色| 日韩操人| 亚洲成人免费电影| 男女99免费视频| 中文字幕av在线| 久久超级碰碰| 97人人看| 五月丁香啪啪网| 99热自拍| 丁香亭亭久久| Av性爱网站| 激情六月五月婷婷综合网| 色七色九九| 六月色婷婷欧美| \\五月天婷婷激情| 色综合久久天天综合网 | 丁香五月激情六月综合| 五月青青草综合| 人人天堂操| 久热中文字幕在线线观看| xxx日本东京热| 激情综合五月色丁香婷婷| 久久久久久综合五月婷婷| 66精品成人免费网站在线观看| 日日撸日日操| 欧美丁香婷婷五月天| 久久99网| 欧洲亚洲免费视频9 | 99色热| 精品少妇人妻AV无码专区偷人 | 五月天精品视频| 一起草AV| 精品综合网在线| 伊人五月天久久| 夜夜资源站| 久久色五月天| 色射婷婷五月天| 久久99网| 亚洲第一第二网站| 无码少妇高潮喷水A片免费| 亚洲美女裸体被操在线观看| 久久一品区| 五月天激情四射| 欧美综合婷婷欧美综| 日撸夜撸日操| 丁香婷婷色九月| 久久精品99| 婷婷碰碰| 琪琪色五月天| 青草视频在线蜜臀| 性爱视频99| 久久久久人妻网址| 99热 日韩| 国产精品丝| 操操操av| 久久五月天婷婷| 天天爽天天爽| 久热在线观看视频9| 精品激情| www.lingjunshare.com| 99热在线中文字幕| 色色色色色色色色色影院| a在线免费v| 五月色欧洲| 99啪啪网| co超碰在线观看| 综合激情在线视频| 婷婷天天综合| 色婷操逼| 九九色网| 久热这里只有精品在线观看 | 国产精品五月天婷婷| 99久久9| 在线综合啪| 玖月婷婷爱丁香| 亚洲无码99| 搡BBBB搡BBB搡五十| xx久久| 婷婷五月丁香久久| 伊人婷婷五月天| 婷婷人妻激情| 色综合开心五月深爱五月| 丁香五月影视| 亚洲a片免费观看| 二人电影免费版在线观看| 成人AV中文字幕| 日韩欧美成人网| 草操网| 亚洲精品成人| 丁香九月综合在线| 91婷婷五月天综合视频| 综合激情站| 亚洲成人九九九| 激情九九这里只有精品| 大香蕉人妻| 色色激情网| 婷婷五月激情图片| 中文不卡av| 深爱激情网婷婷| 婷婷亚洲综合| 自拍偷窥99热| www.婷婷| 色级婷婷| 爱婷婷久久视频| 国产精品天天狠天天看| 久er免费视频| 色情五月丁香| 久久婷婷人人| 99热这里只有精品5| 五月婷婷很很色| 五月丁香AV、伊人业余、性色熟妇| 99久热这里只有精品| 国产老熟妇亲子乱对白| 夜夜谢天天干| 国产亚洲色婷婷久久99精品9j| 99视频精品全部免费观看| 色综合天天| 丁香婷婷综合激情五月色,开心五月丁香花综合网,激情综合五月亚洲婷婷,五月天 | 久草热8精品视频在线观看| 婷婷久久五月天| 玖玖婷婷五月天| 日本色99| 久久视频婷婷视频| 色欲婷婷五月天| 九九久久综合| 欧美日韩99| 激情婷婷五月天| 大香蕉啪啪啪| 婷婷综合五月天| 性爱先锋AV| 天天草天天爽| 久热2025无码| 疯狂做受XXXX高潮A片动画| 99re这里只有精品免费| 婷婷成人五月天| 日韩五月天婷婷| 久久久国产精品黄毛片| 色噜综| 婷婷综合天堂| 五月天婷婷视频小说| 国产精品丝| 久久五月丁香婷婷| 五月天无码| 国产人妻人伦精品一区二区| 91啪级电影| 久久久亚洲成人无码A片| 五月丁香婷婷成人网| 第五婷婷伊人丁香| 超碰激情网| wWwCom夜操wwW| 欧类av怡春院| 五月婷婷开心综合| 射久久丁香五月| 九九综合| 99r久久这里只有精品| 国产成人AV不卡| 99久久6| 五月婷婷激情| 丁香五月影院| 午夜婷婷五月天| 婷婷网影院| 开心五月深爱五月| 五月四色婷婷| 久久久久久久久久久月丁| 丁香五月婷婷啪啪啪| 久色视频首页| www,99色| 色婷婷狠狠| 丁香五月第四色88| 激情五月,激情综合网| 色五月婷婷五月天| 久久久久人妻中文| 婷婷在线综合| 疯狂做受XXXX高潮A片| 99热这里只有精品青草| 激情五月婷婷丁香六月| 丁香五月天大香蕉啪啪| 狠狠色大香蕉| 婷婷六月网| enecarbon-materials.com污K127封锁请涟系@wip1688 | 婷婷综合色图| www.婷婷,com| 久久婷婷五月丁香网| 99热国品| 五月天婷婷操逼视频| 亚洲五月天伊人| 中文字幕综合| 婷婷狠狠综合网入口| AV五月丁香| 婷婷综合六| 色色丁香| www.AV在线| 免费看欧美成人A片无码| 人妻精品一区二区三区| 色综合播放| 五月丁香色婷婷色| 蜜桃婷婷丁香综合久久开心亚洲| WWW99热| 性生活久久人妻| 99在线观看视频免费| 99啪视频在线观看| 第九色区av天堂| www.99热在线观看| 婷婷色成人| 色色色视频免费无码 | 91超碰在线观看| 97色碰碰公开视频| 丁香五月激情综合| 99精品久久久久久久婷婷| 99视频网| 青草视频在线蜜臀| 99精品在线播放| 免费亚洲成人电影AV| 碰碰人人人| 天天操天天插| 婷婷色在线| 亚洲99在线| 青草青青草| 视色综合| 激情亚洲五月| 五月综合视频在线| 五月天成人综合| 大香蕉人人人| 亚洲成人精品三区| 亚洲精品无码99热| 婷婷五月天色色| 婷婷五月天精品| 九九亚洲综合| 性色天| 99热免费在线| 99在线精品视频免费观看20| 开心五月丁香婷婷| 日日想日日夜日日操| 日日日日做夜夜夜夜无码| 狠狠色综合网| 五月婷精品| 日韩久热| 婷婷99中文字幕| www.色综合.com| 五月婷激情影院| 99狠狠| 久久在线92| 99色精品| 久9无码视频| 91九色精品| 2017狠狠干| 色婷精品91| 五月丁香婷婷基地| www婷婷| 99久热| 快乐婷婷五月天| 色欲Av五月天| 五月天开心婷婷久久 | 俺去也五月| 99热都是精品| 思思99热| 99热青青草| 婷婷五月亚洲综合| AV操操操| www.婷婷| 欧美日韩二区在线| 久9热视频在线| Caoub青青超碰| 婷婷五月六月| 成人版视频在线观看| 色婷婷久久久| 五月亭亭六月色| 激情网 五月天| 五月婷婷丁香在线视频| 天天谢天天操| 天天操婷婷| 婷婷伊人网| 亚洲中文字幕在线观看| 五月成人丁香av91| 婷婷五月乱交换| 成人婷婷| 97色色色视屏| 婷婷五月天首页| 99热成人精品网站| 97人人干| 国产一级视频a| 国产在线视频1234| 97碰在线视频| 久久综合伊人综合在线| 五月婷婷在线播放| 91婷婷丁香| 成人做爰高潮A片免费视频| 熟女激情网| 91在线日| 插插网爽妇五月丁香| 中国激情网| 黄网免费观看| 欧美内射AAAAAAXXXXX| 在线播放成人| 久久9久| 九九爱看亚洲| 五月婷婷综合网| 九热视频| 超碰丁香五月| 久久久人妻人伦| 97韩国久久电影院| 91操网| 97日韩无套内| 91丨九色丨丰满人妖| 色播播之激情五月婷婷| 五月丁香六月婷婷激情视频在线观看免费| 久99视频在线观看| 又大又粗九一在线| 久久久宗合| 99.色| 成人精品在线观看| H亚洲| 色婷婷五月开心六月综合| 天天做 天天爱| 色吧五月婷婷| www.1024久久| 五月天快乐开心激情网| 五月性色| 色欲一区二区三区精品A片| 97综合色片| 婷婷开心激情综合五月天| 99久久99九九99九九九| 9热在线| 色婷婷婷av| 婷婷五月天情色| 丁香六月丁香婷婷激情| 欧美在线视频99| 五月天播播| 狠狠色噜噜狠| www.粉嫩av.com| 成人丁香五月天Av| 丁香五月婷婷色综合| 五月婷五月婷伊人伊人五月婷| 色婷婷成人| 国产性av| 密黄站| 九九色人| www.久久9| 五月开心深深爱激情综合| 五月丁香影视| 五月丁香999| 人人操AV| 亚洲电影中文字幕| 亚洲日韩26uuu| 99热这里只有精| 91九色丨国产丨爆乳| 婷婷性色| www99精品在线观看| 婷婷五月深深的爱| 91成人性爱视频| 综合狠狠干| 色色亚洲视频| 色九九一二| 色综合综合网| 日韩成人影片网站| 激情五月激情综合网一级丸片| 9久视频| 久热黄色| 91日日日| 99视频在线观看网址| 五月婷婷丁香瑟瑟视频| 婷久久高清| 婷婷五月天成人影片| 亚洲日本韩国| 亚洲AV激情五月综合网| 丁香激情五月天| 色狠狠狠干| 天天综合精品| 丁香五月婷婷五月天在线| 直接看的AV| 婷婷色在线| 色综合色色色| 久热这里只精品| 操碰97| 天天玩天天摸| 婷婷综合五月| 成人婷婷桔色| 成人国产欧美大片一区| 丁香五月婷婷色五月| 国产69久久久欧美黑人A片| 琪琪理论片| 日本精品人妻无码77777| 91操操操| 五月婷婷黄网站大全| 久草热视频在线观看| 91av视频在线观看最新网址|