生活随笔
收集整理的這篇文章主要介紹了
支付宝实现JS调起支付你必须知道的坑(40004 ACQ.INVALID_PARAMETER)
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
前言–支付寶開(kāi)發(fā)碰到任何問(wèn)題,首先考慮官方社區(qū),不要去百度。支付寶的第二份文檔就分散在社區(qū)的各個(gè)帖子里。
需求:在支付寶內(nèi)打開(kāi)網(wǎng)頁(yè)后調(diào)起支付。
我不去一篇篇貼文檔了。因?yàn)?#xff0c;文檔都能查得到,time work而已。但你肯定會(huì)遇到坑,不停地報(bào)–40004 ACQ.INVALID_PARAMETER。
坑1–total_amount這個(gè)參數(shù)是string,cnm,連官方例程中都是float,好不好。用了支付寶的云排查,才發(fā)現(xiàn),一直在報(bào)這個(gè)參數(shù)為空。
坑2–buyer_id必須傳,什么特殊可選,扯蛋。
總的來(lái)說(shuō),相比微信的開(kāi)發(fā)文檔。支付寶的文檔既缺少關(guān)聯(lián)性,又缺少整體脈絡(luò),更不對(duì)一些歧義的細(xì)節(jié)加以說(shuō)明。
比如:開(kāi)發(fā)者關(guān)心支付,那就該單獨(dú)為支付列出一個(gè)總綱,然后具體闡述即可。但是這些東西是散落在一堆文檔中的。在手機(jī)網(wǎng)站支付的文檔中就看不到H5支付相關(guān),支付寶只對(duì)文檔做了縱向歸類(lèi),但沒(méi)有橫向的整理。
再者,H5支付用到的jsapi,里面的tradeNO這個(gè)參數(shù),一點(diǎn)說(shuō)明都沒(méi)有,不告訴你應(yīng)該從哪個(gè)接口去獲取,只能根據(jù)注解去猜。
更可恨的是,官方的示例都有錯(cuò),重要的參數(shù)不作詳細(xì)說(shuō)明。
當(dāng)然,也并不是沒(méi)優(yōu)點(diǎn)。至少,支付寶沒(méi)有微信那么一套繁瑣的流程,只要配置一個(gè)授權(quán)回調(diào)域名就可以了。
更新at 20181127:
關(guān)于notify_url的設(shè)置,
不能放在biz_content中,應(yīng)該在request中設(shè)置。
因?yàn)樗枪矃?shù),不是特定參數(shù)。
躺這個(gè)坑,一半是因?yàn)檠巯?#xff0c;另一半是慣性思維,
官方例程中biz_content中有個(gè)show_url參數(shù),怎么就讓我潛意識(shí)認(rèn)為notify_url因?yàn)榉旁谄渲小?其實(shí),這個(gè)和阿里自身的文檔缺失有很大原因。
開(kāi)發(fā)文檔有問(wèn)題始終不更新,把開(kāi)發(fā)者論壇當(dāng)成了開(kāi)發(fā)文檔的補(bǔ)充。。。醉
alipay.trade.create完成的支付,回調(diào)的定義沒(méi)有文檔有直接說(shuō)明,
在官方論壇上,官方人員才回應(yīng)了這個(gè)接口的回調(diào)和掃碼異步通知的回調(diào)是一樣的。
可是開(kāi)發(fā)文檔明明白白寫(xiě)了,那篇文檔只適用于掃碼支付。
你說(shuō),這叫人如何能明白。自然會(huì)讓人在碰到問(wèn)題時(shí),本能的對(duì)阿里的接口不信任。
吐槽結(jié)束,建議支付寶還是要學(xué)微信,做一些針對(duì)開(kāi)發(fā)的專(zhuān)題文檔。
這次用到的H5支付,所需要的資料都是散落在各個(gè)角落里。最后,還是要感謝官方支付寶小二。
在論壇跟帖后,15分鐘就回復(fù)了。
當(dāng)然,大家提問(wèn)的時(shí)候也應(yīng)該盡量先自查,用好云排查。
然后,看下問(wèn)題被處理時(shí)需要的參數(shù),提前提供出來(lái),節(jié)省雙方時(shí)間。更新at 20181128:
關(guān)于退款。
秉承支付寶一貫的原則--就不告訴你。
退款接口調(diào)用沒(méi)啥問(wèn)題,問(wèn)題是退款也是有異步通知的。
而且,這個(gè)通知是你創(chuàng)建訂單時(shí)候定義的。
而且,這個(gè)通知是和支付完成通知幾乎一樣的。
而且,按照官方解釋--你只能根據(jù)是否存在refund_fee來(lái)判斷退款是否成功。
[社區(qū)的官方指南](https://openclub.alipay.com/read.php?tid=8328&fid=72&page=1)
你說(shuō),你就把這篇文檔貼在退款接口那作補(bǔ)充說(shuō)明不好么。
總結(jié)
以上是生活随笔為你收集整理的支付宝实现JS调起支付你必须知道的坑(40004 ACQ.INVALID_PARAMETER)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。