?key1=value1&key2=value2
- дополнительные параметры, предоставляемые веб-серверу. Эти параметры представляют собой список пар ключ / значение, разделенных символом &. Веб-сервер может использовать эти параметры для дополнительных действий перед возвратом ресурса. Каждый веб-сервер имеет свои собственные правила относительно параметров, и единственный надежный способ узнать, обрабатывает ли конкретный c веб-сервер параметры, - это спросить владельца веб-сервера.
MDN, Более подробное описание URL-адресов
Это означает, что когда HTTP-сервер получает ваш запрос GET /list-page/?somekey=value
, он хорошо знает этот специальный суффикс, и в вашем серверном приложении вы можете обслуживают разные ответы в зависимости от этого параметра.
В вашем случае вы используете что-то вроде nginx или Apache httpd для обслуживания вашего stati c HTML файлов, которые вы создали задолго до запроса. Итак, у вас нет реального приложения, которое могло бы проинструктировать его обрабатывать этот запрос по-разному. Он не перенаправляет с /list-page/?somekey=somevalue
на /list-page/
, поэтому к URL-адресу в вашем браузере по-прежнему прикреплен параметр поиска, но это по-прежнему одна сгенерированная вами страница stati c.
At на этом этапе вы все еще можете использовать JavaScript ( URLSearchParams ) для интерпретации этих параметров и для изменения страницы на месте. Это означает, что вы усложняете свой сайт Hu go, а также увеличиваете нагрузку на клиентов (браузеры). Если вам действительно нужны эти строки запроса и Hu go, это путь к go.
В качестве альтернативы я предлагаю попытаться сгенерировать все возможные варианты /list-page/
и присвоить им имена собственные, например, /list-page/category-1
, /list-page/category-1-with-fizz
. Это зависит от вашего варианта использования, количества имеющихся у вас страниц и частоты их изменения. Hu go довольно быстро компилирует шаблоны и создает множество страниц, поэтому я бы не стал об этом беспокоиться. Результатом действительно будет то, что у вас будет намного больше файлов на выходе, но именно так это происходит с генераторами сайтов stati c, а обслуживание stati c HTML дешевле, чем фактический сервер приложений, например PHP, NodeJS.