声明:本人小白起步,大学刚毕业,慢慢摸索,不对的地方,希望大佬指正,杠精勿喷,感谢感谢;
最近在做一个网上商城的时候,选择支付宝支付,但是在支付宝成功后,会进行异步回调,处理支付成功结果时候,会发现session失效,本来在session域中的值都为空;在网上看了一下;个人理解为是因为这个session对象是从支付宝那边发送过来的,不是从你浏览器里面发过来的,这个时候session是为空的,所以你根本收不到你原本代码中设置过来的session对象的信息,以至于session对象中取不出来你想要的信息
解决办法:
我查看了一下支付宝的Api接口说明:如图所示
网址:https://opendocs.alipay.com/open/270/105900
进入这个api说明
下拉会看到这个参数
passback_params
参数描述:
公用回传参数,如果请求时传递了该参数,则返回给商户时会回传该参数。支付宝会在异步通知时将该参数原样返回。本参数必须进行UrlEncode之后才可以发送给支付宝。
仔细阅读不难发现,这个参数可以解决异步通知的的时候传入值的问题,
所以以下讲一下如何将session中的值传递到异步通知