step1.檢驗簽名演算法是否正確,開發者可以使用chrome開啟卡券簽名除錯工具,開發者也可以參考js-sdk demo中卡券的簽名寫法,
參見:示例**和js-sdk demo
step2.檢查cardext內的引數是否正確
-檢查是否存在自定義code碼的card_id沒有在cardext內傳入code引數,或者非自定義code模式的卡券傳入了code引數,這兩種情況都可能導致引數錯誤或者簽名錯誤;
-檢查是否存在bind_openid為true的card_id沒有在cardext內傳入openid引數,或者bind_openid為false的card_id的卡券傳入了openid引數,這兩種情況都可能導致引數錯誤或者簽名錯誤;
-檢查是否在cardext內傳入了a、b、c、d四個引數,但是簽名時卻使用了a、b、c三個引數或者使用了a、b、c、d、e五個引數,這種情況一定會出現簽名錯誤;
step3.檢查ticket是否正確/有效
-檢查獲取當前ticket的介面是否正確,確認獲取的ticket的type型別是type=wx_card;
-檢查ticket是否過期/無效;
addcard介面常見錯誤以及原因:
領取頁面提示
錯誤原因
修改方法
已領完(addcard)
當前卡券無庫存
呼叫增加庫存介面增加庫存
addcard介面內cardext引數
內nonce_str和timestamp值重複
保證不同的請求中cardext引數內
nonce_str和timestamp值重複
自定義code不能實時下發
js拉起領取頁面時code無法實時下發
引數錯誤(addcard)
cardext引數與card_id屬性不對其
開發者須先查詢card_id詳情,重點關注是否使用
自定義code、是否繫結openid、是否是匯入code模式
自定義code的卡券在cardext須填入code欄位,參與簽名;
繫結openid的卡券須傳入openid欄位
code超長或格式錯誤
檢查code引數是否超過20位或含特殊字元
簽名錯誤(addcard)
簽名演算法錯誤
使用/cgi-bin/sandbox?t=cardsign工具校驗簽名演算法
ticket錯誤
確認使用的ticket是卡券api_ticket而不是jsapi_ticket
且在有效期內
cardext內引數與參與簽名引數不對齊
cardext內若填入了需要參與簽名的引數,須在籤
名演算法中也將字段計入簽名
cardext引數格式錯誤
cardext本身是乙個字串不是object物件,若格式
錯誤ios系統會提示簽名錯誤
拉取卡券列表為空
(choosecard)
簽名錯誤
拉起卡券列表傳入的signature欄位有誤,或者參與簽名的
引數與介面傳入的引數不對齊
篩選條件錯誤
篩選條件中傳入了shopid或者card_type,但是實際沒有對應
門店或者卡型別的卡券
請仔細閱讀
官方文件:
微信卡券開發 查詢卡券
調取卡券使用的access token是普通access token 獲取普通access token方法 下面 需要的類 urlconutil 秒轉換為指定格式的日期 param second param patten return private string secondtodate long...
促銷 卡券系統整理
最近密集調查和學習了卡券系統的業務規則和技術分析,這篇文章的記下了個人對卡券系統各方面的思考 總結和資料整理。一 為什麼會存在卡券系統,卡券系統的價值?卡券系統是運營 的必備工具,無論是在電商類企業還是在其它各行各業都會看到卡券系統的影子。我是從以下幾個角度去理解卡券的 從不同的角度去理解卡券就會得...
css繪製卡券優惠券 CSS 實現優惠券樣式
本文將介紹如何使用 css 中的 radial gradient 實現如下圖所示的優惠券樣式效果 繪製基本樣式 首先,我們繪製出優惠券的基本樣式,這很簡單,就不多說了。滿 100 減 30 scss voucher width 600px height 200px display flex left...