无法从 JAVA 中的重定向 url 检索 PayPal 成功/取消付款数据

Posted

技术标签:

【中文标题】无法从 JAVA 中的重定向 url 检索 PayPal 成功/取消付款数据【英文标题】:Unable to retrieve PayPal success/cancel payment data from redirected urls in JAVA 【发布时间】:2018-12-30 13:26:27 【问题描述】:

发布 PayPal 表单的代码。

<body>
<form accept-charset="utf-8"
    action="https://www.sandbox.paypal.com/au/cgi-bin/webscr" id="frm"
    method="post">
    <input type="hidden" name="business"
        value="aaaa-facilitator@gmail.com"> <input
        type="hidden" name="cancel_return"
        value="http://localhost:8080/abc-jaxrs/web/cancel_redirection"> <input type="hidden"
        name="cmd" value="_xclick"> <input type="hidden"
        name="charset" value="utf-8"> <input type="hidden"
        name="currency_code" value="USD"> <input type="hidden"
        name="notify_url" value="http://localhost:8080/abc-jaxrs/web/success_redirection"> <input
        type="hidden" name="return" value="http://localhost:8080/abc-jaxrs/web/success_redirection"> <input
        type="hidden" name="item_name" value="123"> <input
        type="hidden" name="amount" value="0.1">
</form>
<p style="text-align: center">
<h4>Redirecting To PayPal...</h4>

<script>
    $(this.document).ready(function() 
        $('.loaderparent').show();
        var frm = $("form");
        frm.submit();
    );
</script>

从 Java 控制器的数据中检索数据的代码。

@RequestMapping(value = "/success_redirection", method = RequestMethod.GET)
public ModelAndView successRedirection(HttpServletRequest request, HttpServletResponse response) 

    String itemName = (String) request.getAttribute("item_name"); // or
    String itemNname = request.getParameter("item_name");

但在这两种情况下都会将 itemName 值设为 null。

那么如何在 JAVA 中从 PayPal 中检索成功/失败数据。

【问题讨论】:

他们的文档是怎么说的? @AmanChhabra 文档说:在您的帐户配置文件中打开自动退货后,您可以设置每笔交易的退货 URL 的值,以覆盖您存储在 PayPal 上的值。 return 买家完成付款后,PayPal 将他们的浏览器重定向到的 URL。 cancel_return 如果买家在完成付款前取消结帐,PayPal 会将他们的浏览器重定向到该 URL。 【参考方案1】:

确保启用来自 paypal 帐户设置的即时付款通知 (IPN) 以及成功 URL。

My Profile &gt; My Selling Tools&gt; Instant payment notifications &gt;update 然后如下所示。

【讨论】:

以上是关于无法从 JAVA 中的重定向 url 检索 PayPal 成功/取消付款数据的主要内容,如果未能解决你的问题,请参考以下文章

java中的重定向是啥意思?

将 set-cookie 标头发送到 node.js 中的重定向 url

如何从 Java 桌面应用程序中的重定向 uri 获取 facebook 代码

Google OAUTH:请求中的重定向URI与注册的重定向URI不匹配

如何使用 Python 从 Selenium 的重定向链中获取中间 URL?

IIS7 301 从 URL 列表重定向