是否可以使用 javascript 读取隐藏的 url 参数,但无需 PHP 的帮助? 我通过 .htaccess 附加一个隐藏的 URL 参数:
https://example.com/test/.htaccess
RewriteEngine On
## condition: if url parameter param1=abc not found...
RewriteCond %{QUERY_STRING} !(^|&)param1=abc(&|$) [NC]
## if condition = true -> append hidden url parameter
RewriteRule ^ %{REQUEST_URI}?param1=abc [L,QSA]
## if condition = true -> append visible url parameter
# RewriteRule ^ %{REQUEST_URI}?param1=abc [L,QSA,R]
https://example.com/test/hiddenvartest.php
<?php
// test with "https://example.com/test/hiddenvartest.php?param2=def"
echo 'all GET Parameters read with PHP:<br>';
print_r($_GET);
?>
<script>
const queryString = window.location.search;
console.log(queryString);
const urlParams = new URLSearchParams(queryString);
console.log(urlParams);
document.write("<br><br>all GET Parameters read with JS:<br>" + queryString);
</script>
?>
结果:
使用 PHP 读取的所有 GET 参数:Array ( [param1] => abc [param2] => 定义)
所有使用JS读取的GET参数:?param2=def
(...)hiddenvartest.php?param2=def
通过该示例脚本,我使用 PHP 得到 param1 + param2,但使用 JS 得到 param2
我无法用JS读取隐藏参数(param1=abc),但我可以用PHP读取它。 是否有可能通过Javascript(或JQuery)获取隐藏参数?
背景:我的项目中不能使用php代码,但是可以使用JS。必须隐藏一个参数,以避免复制和粘贴此隐藏参数。
已解决: 纯 JS 是不可能的 - 请参阅 CBroe 的评论