1. 程式人生 > >銀聯PC閘道器支付 相關研究

銀聯PC閘道器支付 相關研究

官網使用servle寫的,諤。。。得轉成mvc的,他的例子既有5.0.0版本的也有5.1.0的,還有測試,生產模式的,有些問題比較亂,也查不到,查到了也不一定對應版本,我暫時瞭解這些,也可能有不對的地方,畢竟也靠猜嘛

1.首先你會發現測試環境,搞一搞就會通,換到生產環境只有三個證書,但是執行會報一個執行的錯9100004,後臺是簽名不行,少檔案啊,這時候官方的說法是需要查測試環境切換到生產環境需要注意什麼,他的demo有個word,按那個流程整到公匙和私匙,這時候我有個疑問,明明是說只要三個證書啊,,,,!

不可那麼較真,據我瞭解私匙證書就是那個簽名證書,是三個證書之一,其他的是加密證書和驗簽證書,私匙證書需要走完證書上傳下載流程的,把證書密碼填到配置檔案,公匙傳上去

2.涉及到公匙和私匙了,這時候我注意到5.0版本的都有個公匙證書acp_test_verify_sign.cer,雖然不用5.0.0,但是看到了對吧,而且上面的問題,官方也提到了公匙要放到正確的地方,他沒說位置,我猜測按那個word做會上傳上去,!

3.,官方的例子不僅給了5.0.0還給了5.1.0,而且,人家還給出了5.1.0的測試環境和生產環境配置,其實沒必要,5.0.0的東西官方自有地方下,坑的是配置檔案你還給倆acp_sdk.properties.金鑰,acp_sdk.properties.證書,兩種方式,呵呵當初我就預設用證書的唄,但是後來又意識到什麼公匙,私匙,也研究了下,後來我才知道他倆的區別:

    # 3. 請注意無跳轉、代收付等涉及敏感資訊加密的產品一定要用證書方式簽名的,請勿使用此檔案。

有這麼一句話,不然你都不知道用哪個,,什麼叫無跳轉,這個你也不好查,我猜 啊,是這個:

就是不用跳到第三方銀聯這,在這就可以支付,或許吧,,因為我也只是猜測!

再後來就需要把這個demo的sdk移到mvc上去,他呢是預設的先走一個servelet,裡面有個方法,載入配置檔案,取裡面的東西,不要妄想忽略這個配置檔案,因為你還有證書要載入,用了一個@ModelAttribute,先載入一下,你會發現他找不到配置檔案,明明放在了src下面的,這個時候,用用這個

in = SDKConfig.class.getResourceAsStream("/acp_sdk.properties");

主要也是看了一篇文章:

 https://blog.csdn.net/j080624/article/details/53171176講了下獲取檔案的寫法問題

4.還有就是他返回的是個html,而且人家制定了返回的路徑,我用ajax沒成,用form action那一套跳轉了,這個我不細看了,

是我較真了嗎,不知道,貌似銀聯的例子比較全,但是我認為,官方的有些東西沒有從5.0.0更新到5.1.0,而且例子有些過於冗餘反而錯誤引導。