Подтвердить что ты не робот

Использование метода POST с тегами HTML-привязки

Я уверен, что ответ будет "НЕТ", но я все равно хотел спросить incase, я что-то пропустил.

Всем известно, что один передает данные на страницу в привязном теге, используя метод GET:

Мне интересно, есть ли способ сделать то же самое, но использовать вместо этого используется метод POST?

Моя цель в том, чтобы сохранить URL-адреса, которые пользователь видит чистыми, а не вкладывая в них что-то, что им не нужно видеть.

Это не имеет никакого отношения к проблемам безопасности, поскольку я уже знаю будут способы получения передаваемых данных.

Если ответ действительно нет, то какие методы люди используют для передачи данных когда есть желание сохранить URL-адреса в чистоте? Печенье? Что-то еще?

и как справляться со сценариями, когда длина URL превышает допустимую длину запроса GET

Я столкнулся с этой проблемой при реализации сортировки/разбиения на страницы с помощью displaytag, все параметры запроса добавляются в URL-адрес sort/pagination, который является более чем допустимой длиной запроса GET.

4b9b3361

Ответ 1

Вы можете сделать что-то вроде этого:

<form id="myform" method="post" action="target.html">
  <input type="hidden" name="name" value="value" /> 
  <a onclick="document.getElementById('myform').submit();">click here</a>
</form>

Ответ 2

Это поведение специфично для отображения библиотеки тегов. Это позволяет легко заклассифицировать результаты поиска. Если вы действительно намереваетесь изменить это, чтобы использовать POST, вам нужно будет переписать библиотеку тегов отображения или добавить jQuery для управления ссылками.

Остаток ваших вопросов никуда не годится. Если вы хотите GET (идемпотентные запросы, URL-адреса закладки, URL-адреса, доступные для поиска, и т.д.), Используйте GET. Если вы хотите использовать POST (не-идемпотентные запросы, URL-адреса без закладок, URL-адреса, не подлежащие сканированию, и т.д.), Используйте POST.

Обычно POST является обязательным, когда запрос может изменять данные на сервере. Подумайте о SQL INSERT, UPDATE, DELETE и т.д. Вы, конечно же, не будете делать такие запросы GET. Представьте, что у вас есть таблица со всеми ссылками "удалить строку", которые делают GET, а затем поисковый робот...

Ответ 3

Вы можете использовать javascript. On onclick ссылки do form.submit

Единственный способ, которым я знаю, иметь дело с длинным URL, - это использовать POST.

Ответ 4

Вы можете создать временную форму и отправить ее во время события onclick тега <a>.