支付寶開發中遇到的坑
支付寶生活號的接口基本上跟微信公眾號一致。
坑一:支付寶在第一次頁面授權之后出現了不跳轉的情況。停留在了空白頁,同樣的頁面,如果重新掃碼進來就好了。
原因:
支付寶的授權鏈接結構如下:
https://openauth.alipay.com/oauth2/publicAppAuthorize.htm?app_id=APPID&scope=SCOPE&redirect_uri=ENCODED_URL
其中還有了一個可選參數 state ,該參數是用來傳入自定義業務邏輯信息的。由于業務需要,再state中需要多個回調參數,就在多個回調參數中間一“|”分割,例如(para1|para2|para3),正是這個“|”導致了在第一次授權之后不跳轉,將“|”換成其他的符號分割就好了,比如“_”(para1_para2_para3)。應該是支付寶的一個小bug,因為同樣的方式微信就沒有。
坑二:網關和事件訂閱機制
1,要開發生活號,必須設置網關,網關的設置極其古怪,必須把官方提供的Demo獨立建站才能驗證通過,不能和放在已有的項目里面,原因不明,初步推測 可能是底層代碼沖突。
2,和微信公眾號不同,支付寶生活號必須訂閱,如果不訂閱,對應的事件是不會推送的。比如帶參數的二維碼,第一次是關注事件,往后是進入事件,如果沒有訂閱進入事件,那么網關是收不到任何通知的。
坑三:和微信公眾號不同,沒有根據userId獲取用戶信息的接口,只有通過令牌授權獲取這一種方式。