因此,我编写了paypal结帐控制器方法,将其设置为一个按钮,当您在网站上按该按钮时,它将加载到paypal结帐站点,您可以登录并付款,并且效果很好,可以给我钱,并给他们买的东西。但是一天后,它无法正常工作,一旦按下按钮,它将重定向到默认网址,我不知道为什么。
我已经尝试更改将id发送到post方法的方式,但是当我打印到控制台时,传入的id总是会给出正确的ID。
@RequestMapping(method = RequestMethod.POST, value = "/pay/")
public String pay(ModelAndView modelAndView, HttpServletRequest request, @RequestParam(name = "id") int id){
String cancelUrl = "https://realmlands.com" + "/" + PAYPAL_CANCEL_URL;
String successUrl = "https://realmlands.com" + "/" + PAYPAL_SUCCESS_URL;
try {
if (id == 2) {
Payment payment = paypalService.createPayment(
49.99,
"USD",
PaypalPaymentMethod.paypal,
PaypalPaymentIntent.sale,
"added founder pack to your account.",
cancelUrl,
successUrl);
for(Links links : payment.getLinks()){
if(links.getRel().equals("approval_url")){
return "redirect:" + links.getHref();
}
}
} else {
Payment payment = paypalService.createPayment(
9.99,
"USD",
PaypalPaymentMethod.paypal,
PaypalPaymentIntent.sale,
"adds 31 days of premium time.",
cancelUrl,
successUrl);
for(Links links : payment.getLinks()){
if(links.getRel().equals("approval_url")){
return "redirect:" + links.getHref();
}
}
}
} catch (PayPalRESTException e) {
modelAndView.addObject("errorMessage", e.getDetails().getMessage());
log.error(e.getMessage());
}
return "redirect:/dashboard/store";
}
它似乎绕过了我的尝试,只做返回重定向
return "redirect:/dashboard/store";
它应该像以前一样加载Paypal结帐,而是重定向回商店。