Я долго сталкивался с проблемой с пружинным контроллером. Даже после долгих исследований проблем перенаправления контроллера пружины, которые не дали никакого решения.
Проблема: Мы осуществляем некоторые платежные интеграции, такие как Sofort, AliPay и PayPal, используя Spring. Все работает нормально на локальной машине (ПК), в то время как это вызывает проблему с PayPal в тестовых средах (серверы развертывания в облаке), однако все остальные типы платежей работают нормально.
Существует URL-адрес обработчика ответа PayPal (Controller) на торговом сервере, где он обрабатывает ответ платежа PayPal, URL-адрес обработчика вызывается дважды. Следовательно, он не дает ожидаемых результатов, поскольку его следует вызывать только один раз.
URL-адрес обработчика ответов PayPal:
нас / EN-US / выписка / оплаты / PayPal / handleResponse? лексема = EC-ХХХХХХХХХХХХ & PayerID = XXXXXX
Замечания:
а) Всякий раз, когда у нас возникают такие проблемы, когда URL вызывают дважды. На сетевой вкладке Chrome JS может быть проблемой. Но мы не нашли там такой истории.
b) Мы используем балансировщик нагрузки в наших тестовых средах. Иногда балансировщик нагрузки заставляет URL-адрес вызываться дважды. Но мы не нашли таких звонков в loadbalancer.
в) Метод Spring Handler, как показано ниже.
@RequestMapping(path = "/handleResponse", method = RequestMethod.GET)
public String handleResponse(@RequestParam(name = "token")
final String token, @RequestParam(name = "PayerID")
final String payerId)
d) Нет проблем с конфигурациями PayPal или серверами PayPal. Если бы я нажал на браузер с приведенным ниже примером URL, он вызывается дважды, даже если он не отправляется из PayPal. Следовательно, с PayPal проблем нет.
https://ABCDMERCHANT.com/us/en-us/checkout/payment/paypal/handleResponse?token=EC-XXXXXXXXXXX&PayerID=XXXXXXXXXXX
Ребята, если бы вы могли дать какие-либо предложения, чтобы отследить его первопричину. это будет полезно для меня.
Спасибо InAdvance !!