1.先說一下依賴的extension,這裏依賴的extension爲 chinesepspwechatpayservices,mobileservices.微信
2.涉及到的Java類有:url
UnifiedOrderRequestProcessor
這個類的工做是填充待發送的數據以及調用接口後數據的整合.spa
WeChatPayHttpClient
這個就不說了,看名字就知道幹嗎的了.不過這裏說一下hybris集成的這個類,當調用微信的接口後,返回的數據裏包含中文時,會出現亂碼狀況,須要手動處理一下.code
Code2DService
這個接口是hybris處理二維碼的.我這裏由於是要把微信返回的code_url轉換爲二維碼圖片,因此我這裏採用了對象
encodeQrCode這個方法.接口
3.說一下整個的流程.圖片
1)在項目的XXXService裏面生成 UnifiedOrderRequestProcessor對象.io
2)在 UnifiedOrderRequestProcessor裏調用process方法,處理微信接口返回的數據.亂碼
3)當微信接口返回成功信息後,Code2DService 裏調用 encodeQrCode 方法,把code_url生成二維碼圖片在前臺展現便可.mobile
對了,微信掃碼支付的時候trade_type爲 NATIVE.