1.http://api.itv.cctv.com/shakeitv2/Getresult
1)請求參數:活動期數 iid
用戶id uid
根據iid通過prizeclient的getPrizeDetail方法查詢活動。
2)prizeclient抽獎客戶端
核心方法:DPrizeActivity::model()->findByPk($id);
3)DPrizeActivity為數據中心的model類繼承framwork中的CRedisModel方法
找到CRedisModel中的findByPk方法
/**
* 根據 pk 查詢
* 設置 二級 pk 表示需要查詢 hash表
*/
public function findByPk($pk, $suffix = null) {
list($key, $field) = $this->keyManager->getCacheKeyWithSuffix($pk, $suffix);
return $field !== null ? $this->hget($key, $field) : $this->get($key);
}
普通存儲:get($key)獲取值
哈希存儲:hget($key,$field);//key為哈希名稱,field為要找值的對應鍵。
4)$this->keyManager->getCacheKeyWithSuffix($pk, $suffix) 執行CRedisKeyManager中的getCacheKeyWithSuffix方法。根據PK獲取緩存鍵值,自動判斷是 hash,還是普通 模式,并返回相應的 key
public function getCacheKeyWithSuffix($pk, $suffix) {
$this->setSuffix($suffix);
$key = $this->getCacheKey($pk);
$this->delSuffix();
return $key;
}
通過getCacheKey方法列出緩存鍵值。$key($key,$field);
5)回到shakeitv2控制器
//獲取搖獎結果信息
$prize = $prizeclient->getPrize($data, $uid,1);
//data為當期搖獎屬性,uid為用戶id,1控制獎品是更替的
搖獎接口代碼閱讀記錄
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
推薦閱讀更多精彩內容
- 身份確認在互聯網越來越普及,在二手、電商、貸款、交友、招聘等主流互聯網應用中都有明確的剛需,傳統的 身份證核驗方式...
- 第一步: 修改/phpcms/modules/member/fields/checkmobile/form.inc...