閱讀說(shuō)明:本節(jié)主要是介紹UML順序圖實(shí)戰(zhàn)應(yīng)用荧降,給大家分析微信支付業(yè)務(wù)流程,并且通過(guò)順序圖的方式給大家呈現(xiàn)更為直觀效果攒读。后面還會(huì)陸陸續(xù)續(xù)的更新更多詳細(xì)的UML開發(fā)應(yīng)用學(xué)習(xí)文章朵诫,直接對(duì)接我們當(dāng)下的開發(fā)。
注意事項(xiàng):UML工具是StarUML薄扁,我用的是Mac版本剪返,大家可以下載自己電腦對(duì)應(yīng)的版本。
下載地址:http://staruml.io/download
內(nèi)容一:順序圖-基本概念邓梅?
第一點(diǎn):順序圖用來(lái)表示用例中的行為順序脱盲。當(dāng)執(zhí)行一個(gè)用例行為時(shí),順序圖中的每條消息對(duì)應(yīng)了一個(gè)類操作或狀態(tài)機(jī)中引起轉(zhuǎn)換的事件日缨。
第二點(diǎn):順序圖展示對(duì)象之間的交互钱反,這些交互是指在場(chǎng)景或用例的事件流中發(fā)生的。?順序圖屬于動(dòng)態(tài)建模匣距。
第三點(diǎn):順序圖的重點(diǎn)在消息序列上面哥,也就是說(shuō),描述消息是如何在對(duì)象間發(fā)送和接收的毅待。表示了對(duì)象之間傳送消息的時(shí)間順序尚卫。
第四點(diǎn):瀏覽順序圖的方法是:從上到下查看對(duì)象間交換的消息。
內(nèi)容二:順序圖-事物與解釋尸红?
內(nèi)容三:順序圖-微信支付-交互流程吱涉?
????商戶系統(tǒng)和微信支付系統(tǒng)主要交互說(shuō)明:
第一步:用戶在商戶APP中選擇商品刹泄,提交訂單,選擇微信支付怎爵。
第二步:商戶后臺(tái)收到用戶支付單循签,調(diào)用微信支付統(tǒng)一下單接口。
注意:具體查看【統(tǒng)一下單API】
第三步:統(tǒng)一下單接口返回正常的prepay_id疙咸,再按簽名規(guī)范重新生成簽名后县匠,將數(shù)據(jù)傳輸給APP。參與簽名的字段名為appid撒轮,partnerid乞旦,prepayid,noncestr题山,timestamp兰粉,package。
注意:package的值格式為Sign=WXPay
第四步:商戶APP調(diào)起微信支付顶瞳。
注意:具體查看【app端開發(fā)步驟說(shuō)明】
第五步:商戶后臺(tái)接收支付通知玖姑。
?注意:具體查看【支付結(jié)果通知API】
第六步:商戶后臺(tái)查詢支付結(jié)果。
注意:具體查看【查詢訂單API】
內(nèi)容四:順序圖-微信支付-詳細(xì)流程慨菱?
第1步:用戶:打開商戶APP客戶端
第2步:商戶-客戶端:選擇商品下單
第3步:商戶-客戶端:請(qǐng)求生成支付訂單
第4步:商戶-服務(wù)器:調(diào)用統(tǒng)一下單接口
????第5步:微信-支付系統(tǒng):生成預(yù)付單
第6步:微信-支付系統(tǒng):返回預(yù)付單信息(prepay_id)
第7步:商戶-服務(wù)器:生成帶簽名的客戶端支付信息
第8步:商戶-服務(wù)器:返回信息(prepay_id焰络、簽名等…)
第9步:用戶:用戶確認(rèn)支付
第10步:商戶-客戶端:通過(guò)支付參數(shù)調(diào)用微信支付SDK
第11步:微信-支付SDK:發(fā)起支付請(qǐng)求
第12步:微信-支付系統(tǒng):驗(yàn)證支付參數(shù)、APP支付權(quán)限
第13步:微信-支付系統(tǒng):返回支付授權(quán)信息
第14步:用戶:用戶確認(rèn)支付符喝,輸入密碼
第15步:微信-支付SDK:提交支付授權(quán)
第16步:微信-支付系統(tǒng):驗(yàn)證授權(quán)闪彼,完成支付交易
第17步:微信-支付系統(tǒng):異步通知商戶服務(wù)器支付結(jié)果
第18步:商戶-服務(wù)器:接收和保存支付通知
第19步:商戶-服務(wù)器:返回告知已接收成功處理
?第20步:微信-支付系統(tǒng):返回支付結(jié)果,發(fā)送微信消息提示
第21步:微信-支付SDK:將支付狀態(tài)通過(guò)商戶APP已實(shí)現(xiàn)的回調(diào)接口執(zhí)行回調(diào)
第22步:商戶-客戶端:查詢實(shí)際支付結(jié)果
?第23步:商戶-服務(wù)器:調(diào)用微信查詢API查詢支付結(jié)果
第24步:微信-支付系統(tǒng):返回支付結(jié)果
第25步:商戶-服務(wù)器:返回支付結(jié)果
第26步:商戶-客戶端:展示支付結(jié)果頁(yè)面
第27步:商戶-客戶端:商戶發(fā)貨协饲,完成交易
內(nèi)容五:順序圖-微信支付-流程圖畏腕?
????備注:本篇文章給大家分析了實(shí)戰(zhàn)應(yīng)用,希望每一位讀者都可以自己去實(shí)踐一下茉稠,動(dòng)手畫一畫描馅,說(shuō)不定你會(huì)意想不到收獲。歡迎每一位讀者關(guān)注后續(xù)文章更新而线,同時(shí)大家有什么好的建議也可以提出來(lái)铭污,我也會(huì)不斷優(yōu)化,方便大家學(xué)習(xí)提升吞获。
Android開發(fā)技術(shù)分享5000人認(rèn)證群653 9611 28况凉,歡迎各位喜歡Android技術(shù)的同學(xué)一起交流!