【问题标题】:ASP.Net Webforms application logging out after visiting Payment GatewayASP.Net Webforms 应用程序在访问支付网关后注销
【发布时间】:2021-04-23 04:24:28
【问题描述】:

我正在使用 .net 框架 4.6 向用 c# 编写的现有 webforms 应用程序添加一些功能。重定向到外部支付网关后,网站返回,但用户最终被注销,因此交易未完成。

应用程序使用支付网关进行信用卡支付。一旦流程开始,应用程序将重定向到支付网关的站点几秒钟,然后返回到我们的结帐页面。但是,当页面返回时,用户会被记录。结果这个过程没有完成

会话 cookie 设置为相同的站点宽松且安全。

我正在使用 Visual Studio 2017 并在我的开发机器上工作。到目前为止,我唯一能想到的是,每当我的应用程序重定向到支付网关时,会话信息就会被清除。因此,当它返回时,用户不再登录。但是,我不知道该怎么做才能使会话保持登录状态。

任何帮助将不胜感激

【问题讨论】:

  • 检查请求中包含的返回 URL 是否具有相同的域?
  • 谢谢@DevC,解决了我的问题。

标签: c# asp.net webforms session-cookies session-state


【解决方案1】:

看到我在 Visual Studio 2017 中工作,当我运行应用程序时,我正在使用 localhost:port_number 的 URL 运行,例如“https://localhost:44390”。但是,实时站点的 url 类似于“https://www.specific.url.com”。

实际的 url 存储在数据库中,并在执行支付过程时被检索。这个实际的 url 也作为返回 url 发送到支付网关。返回实时网址后:“https://www.specific.url.com”与开发网址不匹配:https://localhost:44390。这不知何故导致会话信息丢失。

将数据库中的 url 更改为 https://localhost:44390 后,一切都开始按预期工作。

【讨论】:

  • 感谢您更新详细信息!
猜你喜欢
  • 2011-09-11
  • 1970-01-01
  • 2011-04-03
  • 2011-10-17
  • 2013-08-19
  • 1970-01-01
  • 1970-01-01
  • 2012-08-31
  • 2021-03-30
相关资源
最近更新 更多