酷友观点/经验:支付接口返回数据接收地址,session数据丢失(或者说失效)的问题浅析(原创文章)

简介: 酷友观点/经验:支付接口返回数据接收地址,session数据丢失(或者说失效)的问题浅析(原创文章)     最近手头在开发一个游戏官网,在支付模块采用神州付技术支持,神州付数据表单中要求提供服务器返回地址和页面返回地址,相信做过这类接口的朋友应该猜到        最近手头在开发一个游戏官网,在支付模块采用神州付技术支持,神州付数据表单中要求提供服务器返回地址和页面返回地址,相信做过这类接口的朋友应该猜到这两个地址的作用。

酷友观点/经验:支付接口返回数据接收地址,session数据丢失(或者说失效)的问题浅析(原创文章)

 


 
最近手头在开发一个游戏官网,在支付模块采用神州付技术支持,神州付数据表单中要求提供服务器返回地址和页面返回地址,相信做过这类接口的朋友应该猜到

       最近手头在开发一个游戏官网,在支付模块采用神州付技术支持,神州付数据表单中要求提供服务器返回地址和页面返回地址,相信做过这类接口的朋友应该猜到这两个地址的作用。小编解释下,我们在购买物品或者服务完成,通过支付工具(支付宝、财付通、神州付等等)付款成功之后,支付工具会将订单数据返回给服务器返回地址,同时将页面跳转到页面返回地址....

       在服务器返回地址接受返回过来的订单数据时,会对支付过程进行判断,如果支付成功,则在网站数据库中添加订单信息。我们添加订单信息的时候往往会有个字段,用于存储用户姓名,而用户姓名则会存储在session("user_name")中。

       好了,说到这里,问题出来了。session("user_name")中的数据只能在同一个网站下的网址中自动保存和传递,而服务器返回地址是由支付工具跳转过来,在支付页面是不存在session("user_name"),跳转到服务器返回地址后,自然也就接收不到session("user_name")的值,在做订单数据添加时,用户姓名字段就成了空字段。这就是session丢失或者说是失效。

      最近在网上收罗了很多解决方案,整理之后,感觉有这么两种方法还不错...

      第一:建立专门数据库,在支付之前,根据订单号对应存储session("user_name")值,在跳转回服务器返回地址时,再根据订单号,从数据库提取出session值来添加订单信息。

      第二:有些支付工具可以使用,以神州付为例,在提交的订单信息栏目中,有特别一项可以用于存储用户的私有信息(privatefield),那就可以利用这一项来代替session("user_name") ,接受session("user_name")值并返回给服务器返回地址,弥补了session不能跨网站传值的缺陷。

      可能也还有跟好的方法,欢迎大家一起分享交流...

目录
相关文章
|
6月前
|
前端开发 UED
面试官:【后端一次性返回10万条数据怎么处理/后端发送大数据量的数据如何处理】
面试官:【后端一次性返回10万条数据怎么处理/后端发送大数据量的数据如何处理】
141 0
|
移动开发
微信h5扫码接口范例:多个扫码框支持的办法,通过引入一个参数来区分及使用localStorage保证之前扫到的数据不丢失
微信h5扫码接口范例:多个扫码框支持的办法,通过引入一个参数来区分及使用localStorage保证之前扫到的数据不丢失
117 0
|
定位技术
后端一次性返回几百万条数据怎样处理
后端一次性返回几百万条数据怎样处理
|
微服务
微信授权回调时,回调地址中原有参数丢失
微信授权回调时,回调地址中原有参数丢失
705 0
微信授权回调时,回调地址中原有参数丢失
|
缓存 前端开发 API
异步的发展,顺手学会怎么处理多请求
异步的发展,顺手学会怎么处理多请求
123 0
|
存储 自然语言处理 Dubbo
几行代码轻松实现跨系统传递 traceId,再也不用担心对不上日志了!
新项目查日志太麻烦,多台机器之间查来查去,还不知道是不是同一个请求的。打印日志时使用 MDC 在日志上添加一个 traceId,那这个 traceId 如何跨系统传递呢?
1162 0
|
消息中间件 存储 运维
【真实案例】消息消费失败如何处理?
在介绍消息中间件 MQ 之前,我们先来简单的了解一下,为何要引用消息中间件。 例如,在电商平台中,常见的用户下单,会经历以下几个流程。 当用户下单时,创建完订单之后,会调用第三方支付平台,对用户的账户金额进行扣款,如果平台支付扣款成功,会将结果通知到对应的业务系统,接着业务系统会更新订单状态,同时调用仓库接口,进行减库存,通知物流进行发货!
【真实案例】消息消费失败如何处理?
|
应用服务中间件 nginx
微信公众号能正常回复消息,但是依旧提示该公众号提供的服务出现故障,请稍后再试
前两天公众号突然抽风了,虽然消息能正常回复,但是依旧提示提示该公众号提供的服务出现故障,请稍后再试
476 0
微信公众号能正常回复消息,但是依旧提示该公众号提供的服务出现故障,请稍后再试