我一直在寻找其他网站,看到您进行搜索时,主要是搜索词,位置和类别等内容,您会看到一个漂亮的网址,例如:
example.com/black-boots/new-york/shoes
而不是我现在拥有的东西是这样的:
example.com/search-results/search?=black+boots&city=new+york&category=shoes
在我的路线中,我可以从以下内容开始:
router.get('/search-results/:search/:city/:category', shopController.getSearchResults);
在控制器中,我可以使用req.params.city
等来从url中获取值,但是我无法弄清楚的部分是使用输入法将文本输入值输入url的好方法。得到请求。
默认情况下使用GET会给我一个看起来“丑陋”的网址。
基本上需要填写表格的部分
<form method="GET" action="/search-results/search/city/category">
答案 0 :(得分:1)
注释,以及此代码示例用于GET请求:
const form = document.getElementById('searchform');
form.addEventListener('submit', evt => {
const who = encodeURIComponent(document.getElementById('who').value);
const where = encodeURIComponent(document.getElementById('where').value);
const what = encodeURIComponent(document.getElementById('what').value);
window.location.href = `/${who}/${where}/${what}`;
}