如何仅使用Javascript读取隐藏的URL参数(GET参数)

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

是否可以使用 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。必须隐藏一个参数,以避免复制和粘贴此隐藏参数。

javascript .htaccess mod-rewrite url-rewriting get
1个回答
0
投票

已解决: 纯 JS 是不可能的 - 请参阅 CBroe 的评论

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