亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

微信支付jsapi缺少參數(shù) total_fee 錯(cuò)誤分析與解決方法

 更新時(shí)間:2018年03月26日 09:56:26   投稿:wdc  
這篇文章主要介紹了微信支付jsapi缺少參數(shù) total_fee 錯(cuò)誤分析與解決方法,需要的朋友可以參考下

微信支付jsapi缺少參數(shù) total_fee,其實(shí)很多參數(shù)錯(cuò)誤都會(huì)報(bào)這個(gè)錯(cuò),其實(shí)不一定是參數(shù) total_fee,所以最好是單步或者在日志文件輸出中間結(jié)果,畢竟服務(wù)器上沒(méi)幾個(gè)裝開(kāi)發(fā)軟件的。

最近更換服務(wù)器之后,加上了nginx做代理并做了負(fù)載均衡后,微信支付第一次支付缺少參數(shù) total_fee,再支付就可以,再點(diǎn)支付有報(bào)錯(cuò)缺少參數(shù) total_fee,好奇怪,按理說(shuō)是不應(yīng)該報(bào)錯(cuò)或者要就一直報(bào)錯(cuò),看了好一會(huì)代碼,沒(méi)問(wèn)題,最后把統(tǒng)一下單的參數(shù)打印到后臺(tái),終于發(fā)現(xiàn)問(wèn)題

統(tǒng)一下單中spbill_create_ip參數(shù)一會(huì)是127.0.0.1(ipv4),一會(huì)是0:0:0:0:0:0:0:1(ipv6)

當(dāng)為ipv4是可以正常調(diào)用,為ipv6是就發(fā)生缺少參數(shù) total_fee錯(cuò)誤,其實(shí)后臺(tái)報(bào)錯(cuò)是

<xml>
<return_code>
<![CDATA[FAIL]]>
</return_code>
<return_msg><![CDATA[invalid spbill_create_ip]]></return_msg>
</xml>

從中可以發(fā)現(xiàn)

1、微信支付不支持ipv6;

2、spbill_create_ip參數(shù)雖然要求為非空,但是微信只是校驗(yàn)了非空,沒(méi)有根本要求要實(shí)際的用戶端實(shí)際ip,(127.0.0.1都能發(fā)起支付);

3、同時(shí),我們也發(fā)現(xiàn)為什么ipv4情況下會(huì)一直是127.0.0.1,因?yàn)橛昧薾ginx做了代理,所以request.getRemoteAddr獲取的IP永遠(yuǎn)是本機(jī)地址。

確定問(wèn)題所在,下面解決問(wèn)題,把獲取IP地址的方法換一下

原來(lái)是

parameterMap.put("spbill_create_ip", request.getRemoteAddr());

更換成

public static String getIpAddr(HttpServletRequest request) { 
    String ip = request.getHeader("x-forwarded-for"); 
    if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { 
      ip = request.getHeader("Proxy-Client-IP"); 
    } 
    if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { 
      ip = request.getHeader("WL-Proxy-Client-IP"); 
    } 
    if (ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { 
      ip = request.getRemoteAddr(); 
    } 
    return ip; 
  } 

這樣獲取的IP是ipv4是也是客戶的真實(shí)ip。

有時(shí)報(bào)這個(gè)錯(cuò)誤并不一定是IP的問(wèn)題,前端報(bào)錯(cuò)都是微信支付jsapi缺少參數(shù) total_fee,所以最好的方法還是把中間結(jié)果打印出來(lái)或者斷點(diǎn)測(cè)試一下

相關(guān)文章

  • 初步了解代理和負(fù)載均衡

    初步了解代理和負(fù)載均衡

    本文主要初步帶你了解代理和負(fù)載均衡的知識(shí),文中對(duì)正向、反向代理以及反向代理與負(fù)載均衡的關(guān)系等做了詳細(xì)講解,感興趣的朋友可以參考一下這篇文章
    2021-09-09
  • Matlab使用fft畫出信號(hào)頻譜圖的方法

    Matlab使用fft畫出信號(hào)頻譜圖的方法

    這篇文章主要介紹了Matlab使用fft畫出信號(hào)頻譜圖的方法,本文通過(guò)實(shí)例圖文相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-04-04
  • 計(jì)算機(jī)網(wǎng)絡(luò)編程MQTT協(xié)議基礎(chǔ)原理詳解

    計(jì)算機(jī)網(wǎng)絡(luò)編程MQTT協(xié)議基礎(chǔ)原理詳解

    這篇文章主要為大家介紹了計(jì)算機(jī)編程MQTT協(xié)議的基礎(chǔ)原理詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪
    2021-11-11
  • Windows系統(tǒng)安裝使用Git的詳細(xì)教程

    Windows系統(tǒng)安裝使用Git的詳細(xì)教程

    這篇文章主要介紹了Windows系統(tǒng)安裝使用Git的詳細(xì)教程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-04-04
  • 密碼哈希函數(shù) Bcrypt的最大密碼長(zhǎng)度限制詳解

    密碼哈希函數(shù) Bcrypt的最大密碼長(zhǎng)度限制詳解

    這篇文章主要介紹了密碼哈希函數(shù) Bcrypt的最大密碼長(zhǎng)度限制詳解的相關(guān)資料,需要的朋友可以參考下
    2017-03-03
  • 淺談軟件工程師的自我修養(yǎng)

    淺談軟件工程師的自我修養(yǎng)

    在本文中,我們將探討軟件開(kāi)發(fā)過(guò)程中關(guān)于角色、重構(gòu)和質(zhì)量的問(wèn)題。軟件不僅成為了一個(gè)必需品,更成為了一個(gè)競(jìng)爭(zhēng)優(yōu)勢(shì)。因?yàn)楸姸喙緡@軟件而競(jìng)爭(zhēng),軟件開(kāi)發(fā)相關(guān)的事宜顯得越發(fā)重要。開(kāi)發(fā)軟件的人—軟件工程師正顯得越發(fā)重要。
    2021-05-05
  • Sqoop的安裝與使用詳細(xì)教程

    Sqoop的安裝與使用詳細(xì)教程

    Sqoop是一款開(kāi)源的工具,主要用于在Hadoop與傳統(tǒng)數(shù)據(jù)庫(kù)間進(jìn)行數(shù)據(jù)的傳遞,這篇文章主要介紹了Sqoop的安裝與使用詳細(xì)教程,需要的朋友可以參考下
    2021-04-04
  • nasm實(shí)現(xiàn)的用vmware運(yùn)行自做的linux啟動(dòng)盤的引導(dǎo)代碼

    nasm實(shí)現(xiàn)的用vmware運(yùn)行自做的linux啟動(dòng)盤的引導(dǎo)代碼

    這個(gè)小的代碼的編寫和運(yùn)行還是能讓自己對(duì)系統(tǒng)啟動(dòng)有一個(gè)更深的認(rèn)識(shí),不過(guò)有個(gè)不懂的就是怎么用ISO鏡像文件啟動(dòng),怎么將引導(dǎo)代碼寫入ISO鏡像文件,依然沒(méi)有找到很好的方法解決
    2013-04-04
  • 一文讀懂modbus slave和modbus poll使用說(shuō)明

    一文讀懂modbus slave和modbus poll使用說(shuō)明

    modbus poll和modbus slave是一款實(shí)用的modbus開(kāi)發(fā)和調(diào)試工具,可以非常方便的進(jìn)行modbus調(diào)試,是非常有用的Modbus主機(jī)/從機(jī)模擬程序,這篇文章給大家介紹modbus slave和modbus poll使用說(shuō)明,感興趣的朋友一起看看吧
    2021-04-04
  • 微信小程序常用功能實(shí)例匯總包括上拉刷新,下拉加載,列表數(shù)據(jù)綁定,輪播,參數(shù)傳遞

    微信小程序常用功能實(shí)例匯總包括上拉刷新,下拉加載,列表數(shù)據(jù)綁定,輪播,參數(shù)傳遞

    這篇文章主要介紹了微信小程序常用功能實(shí)例匯總包括上拉刷新,下拉加載,列表數(shù)據(jù)綁定,輪播,參數(shù)傳遞,撥打電話,需要的朋友可以參考下
    2022-12-12

最新評(píng)論