1. 程式人生 > >微信支付開發-從零開始-Part2

微信支付開發-從零開始-Part2

1、

簽名生成的通用步驟如下:

第一步,設所有傳送或者接收到的資料為集合M,將集合M內非空引數值的引數按照引數名ASCII碼從小到大排序(字典序),使用URL鍵值對的格式(即key1=value1&key2=value2…)拼接成字串stringA。

特別注意以下重要規則:

  1. ◆ 引數名ASCII碼從小到大排序(字典序);【java中可直接使用treemap程式碼如下】
  2. SortedMap<Object,Object> parameters = new TreeMap<Object, Object>();
    parameters.put("appid",useValue.AppId);
    parameters.put("mch_id",useValue.MCH_ID);
  3. ◆ 如果引數的值為空不參與簽名;【不需要的引數不要參與簽名】
  4. ◆ 引數名區分大小寫;
  5. ◆ 驗證呼叫返回或微信主動通知簽名時,傳送的sign引數不參與簽名,將生成的簽名與該sign值作校驗。
  6. ◆ 微信介面可能增加欄位,驗證簽名時必須支援增加的擴充套件欄位

第二步,在stringA最後拼接上key得到stringSignTemp字串,並對stringSignTemp進行MD5運算,再將得到的字串所有字元轉換為大寫,得到sign值signValue。

key設定路徑:微信商戶平臺(pay.weixin.qq.com)-->賬戶設定-->API安全-->金鑰設定

舉例:

假設傳送的引數如下:

appid: wxd930ea5d5a258f4f

mch_id: 10000100

device_info: 1000

body: test

nonce_str: ibuaiVcKdpRxkhJA

第一步:對引數按照key=value的格式,並按照引數名ASCII字典序排序如下:

stringA="appid=wxd930ea5d5a258f4f&body=test&device_info=1000&mch_id=10000100&nonce_str=ibuaiVcKdpRxkhJA";

第二步:拼接API金鑰:

stringSignTemp="stringA&key=192006250b4c09247ec02edce69f6a2d"

sign=MD5(stringSignTemp).toUpperCase()="9A0A8659F005D6984697E2CA0A9CF3B7"

最終得到最終傳送的資料:

<xml>

<appid>wxd930ea5d5a258f4f</appid>

<mch_id>10000100</mch_id>

<device_info>1000<device_info>

<body>test</body>

<nonce_str>ibuaiVcKdpRxkhJA</nonce_str>

<sign>9A0A8659F005D6984697E2CA0A9CF3B7</sign>

<xml>

微信提供相關介面線上簽名驗證工具:點選進入。【如果請求有錯誤,可以進這裡校驗下生成的簽名是否正確】

相關推薦

支付開發-開始-Part2

1、 簽名生成的通用步驟如下: 第一步,設所有傳送或者接收到的資料為集合M,將集合M內非空引數值的引數按照引數名ASCII碼從小到大排序(字典序),使用URL鍵值對的格式(即key1=value1&key2=value2…)拼接成字串stringA。 特別注意以下重要規則: ◆ 引數名ASC

支付開發-開始-Part1

公司的產品是基於微信做的一個社群活動報名系統,產品研發還沒多久,以前僅僅支援免費報名-下一步要做付費報名,報名時即付費!由於基於微信報名,理所當然用微信支付。微信開發我也是首次,微信支付更不用說,真正

小程式開始開發步驟(七)引入外部js 檔案

            上一章講到小程式頁面的四種常見的跳轉的方法,這一章寫如何引入一個外部的js檔案,既utils資料夾的用處,其實步驟很簡單:1:準備好外部想要引入的外部檔案,命名為util.js,並且填充固定的檔案內容(一般是固定的庫)圖片.png2:開啟util.js ,繼續填寫重要內容將要使用的方法

小程式開始開發步驟(八)引入框架WeUI

            首先來看下WeUI的官方介紹:WeUI 是一套同微信原生視覺體驗一致的基礎樣式庫,由微信官方設計團隊為微信內網頁和微信小程式量身設計,令使用者的使用感知更加統一。在微信小程式的開發過程中,涉及到的前端複雜的樣式介面的問題,就需要使用個UI框架,這樣可以省去以後很多麻煩。WeUI作為一個

小程式開始開發步驟(二)

上一章註冊完小程式,新增新建的專案,大致的準備開發已經完成,本章要分享的是要建立一個簡單的頁面了,建立小程式頁面的具體幾個步驟:1. 在pages 中新增一個目錄選中page,右擊滑鼠,從硬碟開啟,開啟硬碟檔案之後,新建一個資料夾test(或者點選+號,逐個新增目錄,新增目錄下面所需要

小程式開始開發步驟(三)底部導航欄

上一章節,我們分享瞭如何建立一個新的頁面和設定頁面的標題,這一章我們來聊聊底部導航欄是如何實現的。即點選底部的導航,會實現不同對應頁面之間的切換。 我們先來看個我們要實現的底部導航欄的效果圖:(三個導航圖示示例,微信小程式最多能加5個) 1. 圖標準備

小程式開始開發步驟(六)4種頁面跳轉的方法

四種跳轉的方法,在index裡面寫下一段程式碼進行測試 1:從首頁跳轉到日誌頁面(可以返回) (注意,在沒有設定底部導航的情況下,沒有tab也可使用這個屬性,有tab頁則需更換switchTab屬性) <view> <navigator

小程式開始開發步驟(四)自定義分享的功能

上一章節,實現了小程式的底部導航的功能,這一節開始實現一些簡單的功能。本章節介紹的是小程式的自定義分享的功能。 可以分享小程式的任何一個頁面給好友或群聊。注意是分享給好友或群聊,並沒有分享到朋友圈。一方面微信在嘗試流量分發方式,但同時又不願意開放最大的流量入口。

小程式開始開發步驟(一)

從零到有寫一個小程式系列專題,很早以前就想寫來分享,但由於專案一直在進展,沒有過多的時間研究技術,現在可以繼續分享了。1:註冊用沒有註冊過微信公眾平臺的郵箱註冊一個微信公眾號, 申請帳號 ,點選 https://mp.weixin.qq.com/wxopen/waregister?ac

小程式開始開發步驟(二)建立小程式頁面

上一章註冊完小程式,新增新建的專案,大致的準備開發已經完成,本章要分享的是 要建立一個簡單的頁面了,建立小程式頁面的具體幾個步驟: 1. 在pages 中新增一個目錄 選中page,右擊滑鼠,從硬碟開啟,開啟硬碟檔案之後,新建一個資料夾test(或者點選+號,逐個新增目錄

小程式-開始新建一個專案

新建時,不勾選【建立普通快捷啟動模板】 在根目錄下建立3個應用程式檔案 app.json   app.js   app.wxss 在根目錄下建立pages檔案, 在pages檔案下建立welcome資料夾並建立四個頁面檔案 welcome.js

小程式-開始製作一個跑步小程式

一、準備工作 1、註冊一個小程式賬號,得用一個沒註冊過公眾號的郵箱註冊。 2、註冊過程中需要很多認證,有很多認證,比較繁瑣,如果暫時只是開發測試,不進行提審、釋出的話,只要完成營業執照號填寫就可以了,不需要完成微信認證。 3、註冊完賬號,登入,在主頁面左邊列表中點選設定,然後再

支付開發 支付 商戶免充值代金券 沙箱密鑰

width tran 產生 img 安全 原理 性能 正式 固定 一、仿真測試系統 為降低商戶測試門檻,微信支付團隊開發了一套獨立的仿真測試系統。該系統根據驗收用例金額的不同返回不同的響應報文,以滿足商戶正常功能測試、安全/異常測試及性能測試的需求。 圖1 微信支付仿真

支付開發:10分鐘幫你開通支付免充值代金券和免充值立減與折扣 申請免充值代金券

付費 wid 不存在 返回 adb ota 粉絲 影響 OS 功能介紹: 商戶不需要預先充值營銷經費,即可創建和激活免充值代金券活動。活動生效後,用戶到店使用微信支付,當訂單符合優惠規則時,會直接扣減核銷優惠商戶的訂單實收金額。 免充值,營銷資金“0”占用不需要預充值營銷

支付開發:10分鐘幫你開通支付免充值代金券和免充值立減與折扣,申請免充值代金券,社交立減金

進行 功能介紹 log 聯系 alt 步驟 www tro -c ---恢復內容開始--- 功能介紹: 商戶不需要預先充值營銷經費,即可創建和激活免充值代金券活動。活動生效後,用戶到店使用微信支付,當訂單符合優惠規則時,會直接扣減核銷優惠商戶的訂單實收金額。 免充值,營銷

支付開發:10分鐘幫你開通支付免充值代金券和免充值立減與折扣,申請免充值代金券,社交立減金

www. 查詢 5.5 輸入 bubuko nbsp blog 等待 ota 功能介紹: 商戶不需要預先充值營銷經費,即可創建和激活免充值代金券活動。活動生效後,用戶到店使用微信支付,當訂單符合優惠規則時,會直接扣減核銷優惠商戶的訂單實收金額。 免充值,營銷資金“0”占用

支付開發:開通免充值代金券和開通免充值立減與折扣,申請免充值代金券,接口升級驗收步驟

支付 生效 upload 設置 target title 調用 box 基礎 功能介紹: 商戶不需要預先充值營銷經費,即可創建和激活免充值代金券活動。活動生效後,用戶到店使用微信支付,當訂單符合優惠規則時,會直接扣減核銷優惠商戶的訂單實收金額。 免充值,營銷資金“0”占用

公眾號支付開發

The 部署 func else ldr 發包 ati 處理 fig 公眾號微信支付開發 1.第一步:設置微信支付目錄,這個地址指到支付頁面的上一級即可。 例如:支付頁面的地址是http://www.baidu.com/wechat/pay/shopping,只需填寫htt

作業系統開發開始教程

教程主要內容: 1.編寫真實模式多工作業系統雛形,不實現檔案系統 2.編防寫模式多工作業系統雛形,有時間實現檔案系統 3.在編寫的同時分析windows&linux作業系統的技術精髓 作業系統編寫教程提綱 一.編寫一個真實模式多程序系統雛形 1.PC啟動分析,引導扇區編寫 2.中

支付開發初體驗

這段時間由於要進行微信公眾號相關的開發,故而接觸到了微信支付。老版本的V2公眾號微信支付比較難搞,有些東西不夠規範。新版本的微信支付統一了介面,文件也比較齊全,全部接入商戶平臺(pay.weixin.qq.com)。下面簡述一下微信公眾號現金支付的開發過程。 申請微信支付