Итак, я написал метод контроллера PayPal Checkout, настроил его на кнопку, и когда вы нажимаете кнопку на веб-сайте, он загружается на сайт Checkout PayPal, вы можете войти и оплатить, и он работает нормально, дает мне деньги и отдают им свои купленные вещи. Но через день он не работает, и каждый раз, когда я нажимаю на кнопку PayPal, он выдает ошибку.
Ошибка
2019-06-26 00:15:35.600 ERROR 17396 --- [http-nio-8080-exec-2] com.paypal.base.HttpConnection : Response code: 401 Error response: {"error":"invalid_token","error_description":"Access Token not found in cache"}
2019-06-26 00:15:35.608 ERROR 17396 --- [http-nio-8080-exec-2] c.r.api.controllers.PaymentController : Response code: 401 Error response: {"error":"invalid_token","error_description":"Access Token not found in cache"}
@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";
}
У него уже должен быть токен, если он работал один раз.