Как передать URI, содержащий хэш, в качестве параметра маршрута для выражения? - PullRequest
0 голосов
/ 28 июня 2019

В моем экспресс-приложении есть следующий маршрут:

app.get('/api/:URI', (req, res) => {
  doStuff();
}

Переданный параметр URI - это URI, кодированный на стороне клиента с помощью encodeURIComponent()

. Он работает нормально, кроме случаев, когдаURI содержит хеш.
Пример: http://foo.bar/foobar/bla#blabla-313fe4ce-4f8d-48b7-b0f3-a59844402ee8
В этом случае маршрут игнорируется.

На стороне браузера я получаю код 301, затем результат следующего действительного маршрута.

Если я удаляю хеш или, что более странно, если я отключаю кэш на стороне браузера, он работает отлично.

Есть ли способ, которым Express может игнорировать хеш?

Редактировать: Это абсолютно не Могу ли я использовать символ (@) внутри URL-адресов? дубликат, вопрос скорее в экспресс-маршрутизации и / или в проблемах кэширования в браузерах, чем в разрешенных символах в URL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...