在我的网站上,我重写了所有网址。但是现在我已经开始使用AJAX进行投票功能(这是一个问答社区),但是存在一些问题:
我正在将new UrlSearchParams(window.location.search)
存储在一个常量中。然后,我为此调用.get()
方法。但是,由于网址已被重写,因此无法识别查询。
const myParam = urlParams.get('id');
该网址是www.example.com/Questions/7
的{{1}}
我的.htaccess文件如下所示:
www.example.com/pages/question.php?id=7
如何克服URL重写后UrlSearchParams无法识别查询字符串数据这一事实?
答案 0 :(得分:1)
您的重写规则规定了所有内部重写,这意味着客户端代码只能看到原始URL,即then
。
由于您的PHP在服务器端运行,并且可以看到重写的查询参数,因此您可以将它们直接作为JS变量注入,以供客户端代码使用。
例如,将其放在您的/Questions/7
部分...
<head>