如何在spring控制器中配置paypal ipn监听器响应
Posted
技术标签:
【中文标题】如何在spring控制器中配置paypal ipn监听器响应【英文标题】:how to configure paypal ipn listener response in spring controller 【发布时间】:2019-04-06 15:09:02 【问题描述】:如何在 spring 控制器中配置 Pay pal 即时付款通知侦听器响应。也可以在 IPN 侦听器 URL 中配置 Paypal IPN 侦听器,如下所示在 Paypal 商家配置文件中。 IPN 侦听器 URL = http://localhost:8080/UNI_VAT/payPalIpnListener
【问题讨论】:
嗨,欢迎来到 Stack Overflow。请您查看How to ask 指南吗?您的问题目前没有得到很多回应的形式具体来说,您应该编辑您的问题,以包括您迄今为止尝试过的步骤以及您遇到的问题。 【参考方案1】:我已经在我的项目中成功完成了,所以希望这个答案对你有所帮助。
请按照以下步骤实施贝宝支付集成。
Paypal 端配置
1.登录paypal企业账号。
2.点击导航栏中的设置图标(如果你想使用URL,那么https://www.sandbox.paypal.com/businessprofile/settings就是URL。
3.你会得到如下画面。
4.点击我的销售工具>网站偏好(屏幕附在下面)
5.通过单击上方屏幕中的即时付款通知启用即时付款通知,您将进入以下屏幕(您将被要求输入一个 URL,您希望在付款成功或失败后将贝宝重定向到该 URL。请参见下面的屏幕IPN 已启用。
恭喜,您已完成支付宝支付所需的所有配置。
现在让我们来 JAVA 部分来处理来自 paypal 的成功/失败。
在控制器中创建一个方法来处理如下所示的贝宝重定向 URL(您将获得多个请求参数,如“st”、“amt”、“cc”、“tx”状态、金额、货币、交易 ID 等)。
@RequestMapping(value="/paypal/success") //this url should map which you configured in step 5
public String success(ModelMap modelMap,HttpServletRequest httpServletRequest,Model uiModel) throws Exception
Enumeration<String> parameterNames = httpServletRequest.getParameterNames();
while (parameterNames.hasMoreElements())
String paramName = parameterNames.nextElement();
System.out.println("paramName : "+paramName);
String[] paramValues = httpServletRequest.getParameterValues(paramName);
for (int i = 0; i < paramValues.length; i++)
String paramValue = paramValues[i];
System.out.println("paramName : " + paramName+ ",paramValue : " + paramValue);
//your logic goes here
【讨论】:
感谢您的帮助,但在 Paytab 商家帐户中启用即时付款通知时遇到问题。以上是关于如何在spring控制器中配置paypal ipn监听器响应的主要内容,如果未能解决你的问题,请参考以下文章
如何在 PHP 中使用 IPN(即时付款通知)在 Paypal 中配置定期付款