Как отправить форму, не имея значений, указанных в URL? - PullRequest
0 голосов
/ 14 сентября 2011

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

У меня есть очень простая HTML-страница, которая служитинтерфейс для веб-приложения, которое я сделал.На указанной странице есть две формы - одна для регистрации учетной записи, а другая для входа в существующую учетную запись.Идея заключается в том, что если вы зарегистрируетесь или войдете в систему, вам будет предложено само веб-приложение.

В настоящее время у меня это работает, но содержимое формы отображается в URL при отправке.Это не очень хорошо выглядит (поскольку URL веб-приложения становится url.com/?username=user&password=pass вместо просто url.com), а также небезопасно, так как любой наблюдатель сможет ясно увидеть, что такое имя пользователя / пароль.

Я попытался использовать формы jquery для отправки этого с использованием ajax, и я успешно смог увидеть и обработать этот запрос на моем сервере, но после возврата новой HTML-страницы клиенту браузер больше не загружает эту новую страницу.Я понимаю, что jquery / ajax был создан (по крайней мере, частично) для включения интерактивных функций на веб-странице без необходимости обновления всего содержимого, но есть ли способ использовать его для достижения такой цели?

в качестве альтернативыЕсть ли у кого-нибудь еще идеи о том, как я могу достичь своей цели?

Кроме того, просто чтобы убедиться - если бы я хотел представить это через SSL (что я делаю в конце концов), мне просто нужно изменитьURL, на который отправляется эта форма, чтобы включить https вместо http, правильно?

Best, и спасибо,Сами

Ответы [ 4 ]

2 голосов
/ 14 сентября 2011

используйте post вместо get для отправки формы

<fom action="post">

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

http://myblog.org/admin/posts/delete/357

Должен привести вас на страницу подтверждения, а не просто удалить элемент. Так легче избежать несчастных случаев.

POST также более безопасен, чем GET, потому что вы не вставляете информацию в URL. Поэтому использование GET в качестве метода для HTML-формы, которая собирает пароль или другую конфиденциальную информацию, - не лучшая идея.

Последнее замечание: POST может передавать больший объем информации, чем GET. Я не помню точных ограничений каждого из них, но преимущество является значительным.

2 голосов
/ 14 сентября 2011

используйте метод POST вместо GET, при использовании GET значения формы отображаются в строке запроса

Когда мне следует использовать метод GET или POST? В чем разница между ними?

1 голос
/ 14 сентября 2011

в действии формы используйте метод POST вместо GET

Когда вы используете POST и когда вы используете GET?

0 голосов
/ 14 сентября 2011

Как правило, используйте POST для любого запроса, который имеет побочный эффект, например, обновление базы данных или переход от выхода из системы к входу в систему. Используйте GET, когда все, что вам нужно, это получить страницу.

Из-за способа реализации POST ни один из аргументов не появится в URL.

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