В руководстве по asp есть пять отличий в форме получения сообщения. HTTP-запросы и формы представлены отдельно. Друзья, нуждающиеся в помощи, могут узнать о следующих пяти различиях в форме получения сообщения в руководстве по asp.
Существует 5 различий между методами Get и Post.
1. Get — это получение данных с сервера, а post — передача данных на сервер.
2. Get добавляет очередь данных параметров к URL-адресу, на который указывает атрибут ACTION отправленной формы. Значения соответствуют каждому полю в форме один к одному и их можно увидеть в URL-адресе. Post использует механизм публикации HTTP для размещения каждого поля формы и его содержимого в ЗАГОЛОВКЕ HTML и передачи его на URL-адрес, указанный атрибутом ACTION. Пользователи не могут видеть этот процесс.
3. Для метода get серверная сторона использует Request.QueryString для получения значения переменной. Для метода post серверная сторона использует Request.Form для получения отправленных данных.
4. Объем данных, передаваемых get, невелик и не может превышать 2 КБ. Объем данных, передаваемых по почте, относительно велик и по умолчанию обычно не ограничен. Но теоретически максимальный размер составляет 80 КБ в IIS4 и 100 КБ в IIS5.
5. Безопасность получения очень низкая, а безопасность почты высокая.
HTTP-запрос: разница между методами GET и POST
HTTP определяет различные методы взаимодействия с сервером, наиболее основными методами являются GET и POST. Фактически GET подходит для большинства запросов, а POST зарезервирован только для обновления сайта. Согласно спецификации HTTP, GET используется для поиска информации и должен быть безопасным и идемпотентным. Безопасная означает, что операция используется для получения информации, а не для ее изменения. Другими словами, запросы GET обычно не должны иметь побочных эффектов. Идемпотент означает, что несколько запросов к одному и тому же URL-адресу должны возвращать один и тот же результат. Полное определение не так строго, как кажется. По сути, цель состоит в том, чтобы, когда пользователь открывает ссылку, он мог быть уверен, что ресурс не изменился с его точки зрения. Например, главная страница новостного сайта постоянно обновляется. Хотя второй запрос возвращает другой пакет новостей, операция по-прежнему считается безопасной и идемпотентной, поскольку она всегда возвращает текущие новости. наоборот. POST-запросы не так просты. POST представляет собой запрос, который может изменить ресурс на сервере. По-прежнему принимая в качестве примера новостной сайт, аннотации читателей к статье должны реализовываться посредством POST-запросов, поскольку после отправки аннотации сайт становится другим (например, аннотация появляется под статьей);
При отправке ФОРМЫ, если метод не указан, по умолчанию используется запрос GET, и данные, отправленные в форме, будут добавлены к URL-адресу, отделенному от URL-адреса знаком?. Буквенно-цифровые символы отправляются как есть, но пробелы преобразуются в знаки +, а другие символы преобразуются в %XX, где XX — это значение ASCII (или ISO Latin-1) символа в шестнадцатеричном формате. Данные, отправленные запросом GET, помещаются в заголовок протокола HTTP-запроса, а данные, отправленные POST, помещаются в данные объекта; данные, отправленные GET, могут иметь размер только до 1024 байт, тогда как POST не имеет этого ограничения.
В чем разница между использованием сообщения и получением в форме?
В форме вы можете использовать post или get. Все они являются законными значениями метода. Однако есть как минимум два различия в использовании методов post и get:
1. Метод Get передает вводимые пользователем данные через запрос URL-адреса. Метод Post принимает другую форму.
2. При отправке в режиме получения вам необходимо использовать Request.QueryString для получения значения переменной. При отправке в режиме публикации вы должны получить доступ к отправленному содержимому через Request.Form.
Внимательно изучите приведенный ниже код. Вы можете запустить его, чтобы почувствовать это:
код
Ниже приводится цитируемое содержание:
<!--Единственное различие между двумя формами — это атрибут метода-->
Скопируйте код кода следующим образом:
<FORM ACTION=getpost.php учебник METHOD=get>
<INPUT TYPE=text NAME=Text VALUE=Hello World></INPUT>
<INPUT TYPE=submit VALUE=Method=Get></INPUT>
</ФОРМ>
<BR>
<FORM ACTION=getpost.php МЕТОД=post>
<INPUT TYPE=text NAME=Text VALUE=Hello World></INPUT>
<INPUT TYPE=submit VALUE=Method=Post></INPUT>
</ФОРМ>
<? Если Request.QueryString(Text) <> Тогда ?>
Через метод get передается строка: <B><?= Request.QueryString(Text) ?></B><BR>
<? Конец, если?>
<? Если Запрос.Форма(Текст) <> Тогда ?>
Через метод Post передается строка: <B><?= Request.Form(Text) ?></B><BR>
<? Конец, если?>
иллюстрировать
Сохраните приведенный выше код как getpost.asp, а затем запустите его. Сначала проверьте метод post. На данный момент URL-адрес браузера не изменился, и возвращается следующий результат.
Через метод Post передается строка: Hello World.
Затем тест отправляется с использованием метода get. Обратите внимание, что URL-адрес браузера становится:
http://localhost/general/form/getpost.php?Text=Hello+World
И возвращается результат :
Через метод get передается строка: Hello World.
Наконец, отправьте его с помощью метода post, и URL-адрес браузера по-прежнему будет:
http://localhost/general/form/getpost.php?Text=Hello+World
И возвращаемый результат становится :
Через метод get передается строка: Hello World.
Через метод Post передается строка: Hello World.
намекать
Отправка данных с помощью метода get может вызвать проблемы с безопасностью. Например, целевая страница. При отправке данных с помощью метода get имя пользователя и пароль появятся в URL-адресе. если:
1. Страница входа может кэшироваться браузером;
2. Другие могут получить доступ к машине клиента.
Затем другие смогут прочитать номер счета и пароль клиента из истории браузера. Поэтому в некоторых случаях метод get может вызвать серьезные проблемы с безопасностью.
предположение
В форме рекомендуется использовать метод post.