Как правильно обрабатывать амперсанд для разделителя в параметрах запроса URL-адреса, вводимого пользователем, и при этоHtml

Программисты Html
Ответить Пред. темаСлед. тема
Anonymous
 Как правильно обрабатывать амперсанд для разделителя в параметрах запроса URL-адреса, вводимого пользователем, и при это

Сообщение Anonymous »

Как правильно обрабатывать амперсанд для разделителя в параметрах запроса входного URL-адреса, в то же время обеспечивая безопасность от XSS?
На моем веб-сайте у меня есть ввод поле, где пользователи могут размещать ссылки. Эти ссылки сохраняются в моей базе данных, а затем другие пользователи могут нажимать на эти ссылки через href тега . Аналогично Reddit, например.
Я хочу, чтобы пользователи могли вводить URL-адреса, например:

Код: Выделить всё

 https://example.com:8080/?sort=custom&kind=comments&scope=discover&time=6mo&page=2
Обратите внимание, что в параметрах запроса требуется разделитель амперсанда.
Чтобы предотвратить XSS, я передаю пользовательский ввод через библиотеку аммиака. Однако это приводит к тому, что амперсанд экранируется и отображается как &:

Код: Выделить всё

https://example.com:8080/?sort=custom&kind=comments&scope=discover&time=6mo&page=2
Очевидно, это неправильный URL-адрес.
Как правильно с этим справиться?
ПРИМЕЧАНИЕ : Я не спрашиваю о самом параметре моего запроса, содержащем амперсанд. Я спрашиваю об амперсанде, который используется в качестве разделителя нескольких параметров запроса в ссылке.

Подробнее здесь: https://stackoverflow.com/questions/793 ... s-of-a-use
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Html»