获取地址栏url而不是请求url

问题描述 投票:0回答:2

我的页面 test_page 的 url

http://domain.sd/test_page
位于地址栏中。 我在 ajax 响应的同一页面中使用了带有 url filter_details 的控制器。我想获取地址栏中的地址。 现在我只能获取ajax请求url

 $url=\Request::getRequestUri();
   echo $url; // output: filter_details

如何获取地址栏中的地址

php url laravel-5
2个回答
3
投票

PHP 服务器只知道请求的上下文。

如果您使用其他 URL 进行 ajax 请求,PHP 无法知道浏览器地址栏中显示的当前地址。

尝试使用ajax请求通过参数/数据传递地址栏中的url。您可以使用

window.location
在客户端浏览器中获取当前地址,并将其作为查询或负载数据与您的请求一起传递,具体取决于您的 ajax 方法(GET 或 POST)。


-2
投票

您可以在 Laravel 中使用以下命令获取浏览器的 URL:

\Request::server('HTTP_REFERER');

或者在 PHP 中你可以使用

$_SERVER['HTTP_REFERER'];

HTTP Referer 标头由用户代理设置,包含页面的 URI。例如,如果您单击页面 abc.com/page 上的链接转到 another-pqrl.com/link,则 another-pqrl.com/link 收到的 HTTP Referer 将具有值 abc.com/page。

在 laravel 版本 5.5 中,我使用 $templateAppSlug = \Request::server('HTTP_REFERER');我得到 URL 作为输出值。

© www.soinside.com 2019 - 2024. All rights reserved.