我结帐后,我的页面将重定向到支付网关网站。成功付款或失败后,其重定向(POST方法)进入我自己的网站页面(www.abc.com/success/id或www.abc.com/fail/id)。
我的问题是我可以获取该支付网关的网站网址吗?我想知道我从哪个URL重定向。
我正在使用Laravel5.6,我的代码如下:
public function getPaymentSuccess(Request $request){
$get_payment_gateway_url = URL::previous();
dd($get_payment_gateway_url);
}
仅显示当前网址(我自己的网站网址)。
答案 0 :(得分:0)
如果支付网关愿意共享其重定向的目的地,或者是因为它生成了浏览器遵循并设置发起者的重定向响应,或者是因为它直接调用了回调URL并提供了引荐来源,那么您可以访问此地址来自以下信息:
$get_payment_gateway_url = $request->server("HTTP_REFERER");
但是,它是一个HTTP_*
头意味着它是由请求的发起者提供的,因此不应用于安全性检查,也不能保证它会在那里。
如果支付网关没有共享此信息,那么就不可能知道请求的来源,因为这通常发生在服务器外部,并且服务器唯一看到的只是传入请求,而发件人决定了该信息提供。