使用 java 从 Payment GateWay 重定向时,我丢失了会话数据
I am losing session data when being redirected from Payment GateWay using java
我正在使用 java 会话设置一些值。调用支付网关后,我存储的所有会话值都丢失了。请帮助我如何获取这些会话值。
我将一些值设置为会话 session.setAttribute("id", 120)。重定向支付网关后。我尝试使用 session.getAttribute("id") 获取 ID。这里是 returns 空值。
在聊天中,您曾声明您将 JSP 会话 ID 保存在 URL 参数中而不是 cookie 中。如果回调 URL 未指定相同的会话 ID,这将导致来自支付网关的回调出现问题。
这意味着您需要将会话 ID 放在回调中 URL。我不熟悉 CCAvenue 作为支付网关,但我可以告诉你这么多:
当您设置回调 URL 时,您需要使用 HttpServletResponse#encodeURL
将会话 ID 编码到它上面
您可以将回调(即您的主页)的 URL 传递给此方法,它会 return 回调 URL 并在其中编码会话 ID,如有必要。然后,您可以使用此 URL 作为网关上的用户重定向(回调),当重定向完成时,页面将加载有效会话。
我正在使用 java 会话设置一些值。调用支付网关后,我存储的所有会话值都丢失了。请帮助我如何获取这些会话值。
我将一些值设置为会话 session.setAttribute("id", 120)。重定向支付网关后。我尝试使用 session.getAttribute("id") 获取 ID。这里是 returns 空值。
在聊天中,您曾声明您将 JSP 会话 ID 保存在 URL 参数中而不是 cookie 中。如果回调 URL 未指定相同的会话 ID,这将导致来自支付网关的回调出现问题。
这意味着您需要将会话 ID 放在回调中 URL。我不熟悉 CCAvenue 作为支付网关,但我可以告诉你这么多:
当您设置回调 URL 时,您需要使用 HttpServletResponse#encodeURL
您可以将回调(即您的主页)的 URL 传递给此方法,它会 return 回调 URL 并在其中编码会话 ID,如有必要。然后,您可以使用此 URL 作为网关上的用户重定向(回调),当重定向完成时,页面将加载有效会话。