目錄
回复内容:
首頁 後端開發 php教程 微信支付,大家是通过什么来进行判断支付成功的

微信支付,大家是通过什么来进行判断支付成功的

Jun 06, 2016 pm 08:06 PM
php 微信支付

我目前知道的有两种情况:

  1. 支付成功,JSSDK通知。优点:速度快,支付完了,就立即得到结果了。缺点:前端通知,没经过后台的,是否真的支付成功了,无法保证

  2. 支付成功,等待微信平台回调通知。优点:可校验是否真的支付成功了。缺点:等待时间太慢,我这边都支付完成后,刷新好几遍了,还没等待微信那边发送回调通知;造成付款的用户,成功支付后,看到还是未付款状态。。。。。

请问怎么解决?

总结下我这两天做的解决方法:
1.支付成功后,由JSSDK通知成功,并启动“轮询”,获取订单状态是否成功,成功了就返回OK,要不成功就继续“轮询”
2.后端,等待微信返回通知,并检查状态,更新订单

注:上面说的“轮询”并非真的轮询,而是一遍又一遍的ajax递归。。。。解决问题即可,不弄太复杂

这里我讲最佳答案给最先提供参考答案的 @Eapen

回复内容:

我目前知道的有两种情况:

  1. 支付成功,JSSDK通知。优点:速度快,支付完了,就立即得到结果了。缺点:前端通知,没经过后台的,是否真的支付成功了,无法保证

  2. 支付成功,等待微信平台回调通知。优点:可校验是否真的支付成功了。缺点:等待时间太慢,我这边都支付完成后,刷新好几遍了,还没等待微信那边发送回调通知;造成付款的用户,成功支付后,看到还是未付款状态。。。。。

请问怎么解决?

总结下我这两天做的解决方法:
1.支付成功后,由JSSDK通知成功,并启动“轮询”,获取订单状态是否成功,成功了就返回OK,要不成功就继续“轮询”
2.后端,等待微信返回通知,并检查状态,更新订单

注:上面说的“轮询”并非真的轮询,而是一遍又一遍的ajax递归。。。。解决问题即可,不弄太复杂

这里我讲最佳答案给最先提供参考答案的 @Eapen

先用jssdk成功后轮训后端回调

我一个线上项目微信支付这里回调很及时的啊

页面状态添加一个支付中,增加用户体验

--个人建议

前端页面轮询
后端接口等微信的回调通知,支付成功就更新数据库的状态,前端轮询也会很快就查询到是否真的成功了。

这种情况 可以和用户玩一下文字游戏, 比如客户微信支付成功后,可以给用户呈现出已支付待确认状态,当微信回调确认成功后,可以显示支付已确认 就可以了。。

支付是否成功对应支付肯定有返回结果啊!根据接口返回的状态来判断不可以吗

看着这些回答有点累 支付是有主动查询和官方回调接口的

做过几个微信支付的,一直采用后段回调通知判断,也一直都很快。就主流的支付第三方状态判断基本都是通过后端回调。优化一下你的程序吧。

这种应该都会有回调程序了。我们之前做过类似的支付接口对接程序。我做了好几十家的支付对接,他们都有支付回调。你好好看看文档,虽然我没做文档,但是我觉得他们一定都会有这个回调的。你看看配置的地方,会让你配置回调的地方的。好好看看哈。

和服务器有关系吧.微信支付的回调还是很快的.我的项目中,回调基本上在一秒以内.

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1677
14
CakePHP 教程
1431
52
Laravel 教程
1334
25
PHP教程
1280
29
C# 教程
1257
24
作曲家:通過AI的幫助開發PHP 作曲家:通過AI的幫助開發PHP Apr 29, 2025 am 12:27 AM

AI可以幫助優化Composer的使用,具體方法包括:1.依賴管理優化:AI分析依賴關係,建議最佳版本組合,減少衝突。 2.自動化代碼生成:AI生成符合最佳實踐的composer.json文件。 3.代碼質量提升:AI檢測潛在問題,提供優化建議,提高代碼質量。這些方法通過機器學習和自然語言處理技術實現,幫助開發者提高效率和代碼質量。

session_start()函數的意義是什麼? session_start()函數的意義是什麼? May 03, 2025 am 12:18 AM

session_start()iscucialinphpformanagingusersessions.1)ItInitiateSanewsessionifnoneexists,2)resumesanexistingsessions,and3)setsasesessionCookieforContinuityActinuityAccontinuityAcconActInityAcconActInityAcconAccRequests,EnablingApplicationsApplicationsLikeUseAppericationLikeUseAthenticationalticationaltication and PersersonalizedContentent。

如何使用MySQL的函數進行數據處理和計算 如何使用MySQL的函數進行數據處理和計算 Apr 29, 2025 pm 04:21 PM

MySQL函數可用於數據處理和計算。 1.基本用法包括字符串處理、日期計算和數學運算。 2.高級用法涉及結合多個函數實現複雜操作。 3.性能優化需避免在WHERE子句中使用函數,並使用GROUPBY和臨時表。

作曲家:PHP開發人員的軟件包經理 作曲家:PHP開發人員的軟件包經理 May 02, 2025 am 12:23 AM

Composer是PHP的依賴管理工具,通過composer.json文件管理項目依賴。 1)解析composer.json獲取依賴信息;2)解析依賴關係形成依賴樹;3)從Packagist下載並安裝依賴到vendor目錄;4)生成composer.lock文件鎖定依賴版本,確保團隊一致性和項目可維護性。

MySQL的字符集和排序規則如何配置 MySQL的字符集和排序規則如何配置 Apr 29, 2025 pm 04:06 PM

在MySQL中配置字符集和排序規則的方法包括:1.設置服務器級別的字符集和排序規則:SETNAMES'utf8';SETCHARACTERSETutf8;SETCOLLATION_CONNECTION='utf8_general_ci';2.創建使用特定字符集和排序規則的數據庫:CREATEDATABASEexample_dbCHARACTERSETutf8COLLATEutf8_general_ci;3.創建表時指定字符集和排序規則:CREATETABLEexample_table(idINT

幣安這些c2c交易有風險嗎 幣安這些c2c交易有風險嗎 Apr 30, 2025 pm 06:54 PM

幣安C2C交易讓用戶直接買賣加密貨幣,需注意交易對手、支付和價格波動風險,選擇高信用度用戶和安全支付方式可降低風險。

怎樣在C  中使用type traits? 怎樣在C 中使用type traits? Apr 28, 2025 pm 08:18 PM

typetraits在C 中用於編譯時類型檢查和操作,提升代碼的靈活性和類型安全性。 1)通過std::is_integral和std::is_floating_point等進行類型判斷,實現高效的類型檢查和輸出。 2)使用std::is_trivially_copyable優化vector拷貝,根據類型選擇不同的拷貝策略。 3)注意編譯時決策、類型安全、性能優化和代碼複雜性,合理使用typetraits可以大大提升代碼質量。

如何在MySQL中重命名數據庫 如何在MySQL中重命名數據庫 Apr 29, 2025 pm 04:00 PM

MySQL中重命名數據庫需要通過間接方法實現。步驟如下:1.創建新數據庫;2.使用mysqldump導出舊數據庫;3.將數據導入新數據庫;4.刪除舊數據庫。

See all articles