支付寶支付非同步回撥 302
阿新 • • 發佈:2019-01-28
APP從測試環境遷移到生產環境,重新測試發現購買時,支付寶支付成功之後,訂單狀態未更新,即非同步回撥介面未執行。
檢查發現notify_url是正確的,並且已經支付成功(賬戶有被扣款),登入螞蟻金服開放平臺:https://openmonitor.alipay.com/acceptance/cloudparse.htm進行聯調日誌排查
注意:外部訂單號並不是訂單號,是訂單號後面再拼一段,具體要到查請求引數
實在不知道如何解決的,就找客服小二
查詢之後發現非同步回撥請求302重定向,繼續百度,看到有類似的問題
原因如下:
- 系統要求所有請求必須先登入,導致非同步回撥請求重定向到登入
- 伺服器上裝了安全防護軟體,導致請求被轉發
但是專案邏輯並不會有重定向,並且伺服器防火牆沒開也沒有任何安全軟體。
看到網上有說非同步回撥的時候,https請求好像會有問題,就將https請求改為http請求,但是還是302重定向。
最後把非同步回撥的url請求的域名改成了公網IP和埠的形式,並且用http請求,即可成功回撥。
最後關於支付寶的notify_url的常見問題,有幾點個人總結
- 支付寶非同步回撥未post方式,因此非同步回撥請求的url中不可帶引數
- 該請求不可被重定向
個人感覺這兩點是最容易出問題的,其他的多注意一下,應該沒有什麼問題