springboot微信支付,支付二維碼生成


https://pay.weixin.qq.com/wiki/doc/api/native.php?chapter=9_1 微信掃碼支付開發者文檔,里面會有支付流程的教程

接口鏈接

首先,我們需要符合微信平台的要求,通過接口連接,返回一下該數據,數據類型為xml格式,我們一般獲取code_url的鏈接即可
{nonce_str=xBkIJKHN7wGdjbgn, code_url= weixin://wxpay/bizpayurl?pr=NbLYUB0, appid=wx5beac15ca207c40c, sign=2D2972919C12A6C5628198AB0B906D74, trade_type=NATIVE, return_msg=OK, result_code=SUCCESS, mch_id=1503809911, return_code=SUCCESS, prepay_id=wx311714159734431013de08ba0340929716}
 
接下來需要導入谷歌
依賴
                <!-- google二維碼生成包 -->
                <dependency>
                    <groupId>com.google.zxing</groupId>
                    <artifactId>javase</artifactId>
                    <version>3.3.0</version>
                </dependency>
                        
                <dependency>
                    <groupId>com.google.zxing</groupId>
                    <artifactId>core</artifactId>
                    <version>2.0</version>
                </dependency>
 
導入之后,我們就可以使用它的api了.
接下來://生成二維碼配置
Map<EncodeHintType, Object> hints = new HashMap<>();
//設置糾錯等級
hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.L);
//編碼類型
hints.put(EncodeHintType.CHARACTER_SET,"UTF-8");
 
將我們獲取的code_url(前文已提到的微信文檔中,我們請求成功會返回一個code_url,這是關鍵,有了它才能生成二維碼,所以請仔細閱讀微信文檔),生成二維碼,並且條碼類型設置為QR_CODE(二維碼),寬高為400
BitMatrix bitMatrix = new MultiFormatWriter().encode(code_URl, BarcodeFormat.QR_CODE, 400, 400);
 
通過響應輸出流,輸出二維碼
//響應用輸出流輸出
OutputStream outputStream = response.getOutputStream();
MatrixToImageWriter.writeToStream(bitMatrix,"png",outputStream);


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM