HTTPS с состоянием или без гражданства?

Я хочу немного прояснить, является ли HTTPS с состоянием или без состояния? Это касается RESTful API, который я построил. Мы изначально использовали HTTP. Так как HTTP по существу работает над TCP / IP, который не имеет состояния, следовательно, HTTP не имеет состояния, но когда я переключился на HTTPS, мой API стал с состоянием. Я хотел знать, является ли мой вывод о том, что HTTPS является состоянием. правильно или нет? Я создал свой API, используя инструмент промежуточного ПО под названием webMethods. Спасибо

 Michael Berkowski17 июн. 2012 г., 00:23
https не имеет состояния так же, как http.
 firstpostcommenter07 сент. 2018 г., 18:20
 Todd A. Jacobs17 июн. 2012 г., 00:25
Что ты имеешь в виду "оно стало с состоянием?" Вы должны объяснить, что это значит для вас.

Ответы на вопрос(4)

S в HTTPS касается транспорта, а не протокола. Семантика протокола HTTP остается неизменной для HTTPS. Какстатья о HTTPS в Википедии состояния,

Strictly speaking, HTTPS is not a separate protocol, but refers to use of ordinary HTTP over an encrypted SSL/TLS connection.

И протокол HTTP не имеет состояния по своей конструкции, а не потому, что он используется чаще всего по TCP / IP (ничто не мешает вам использоватьHTTP через UDP например).

HTTPS - это HTTP через безопасное соединение.

HTTP - более высокий уровень, чем соединение.

При подключении к веб-серверу ваше соединение (возможно, всегда?) Имеет тип TCP / IP. Поэтому, если вы посещаете веб-сайт по протоколу HTTPS, ваше TCP / IP-соединение шифруется.

Данные, отправленные сервером и / или клиентом, не были зашифрованы сервером и / или клиентом. Он просто отправляется, как это обычно происходит через HTTP, но на этот раз используется соединение через TCP / IP, которое защищено шифрованием.

Если данные были транспортные средства, а также связь с шоссе, то: - использование HTTP будет похоже на движение транспортных средств по шоссе, и каждый сможет их увидеть; - использование HTTPS было бы то же самое, но транспортные средства проходят через туннель или все, что мешает людям, не находящимся на шоссе, видеть их. Вы можете определить, что есть трафик, но вы не можете идентифицировать транспортные средства, кроме как на обоих концах туннеля.

Я считаю, что это изображение близко к тому, что происходит за сценой. Но я не эксперт. Я просто надеюсь, что это поможет.

TLS/SSL is stateful.  Веб-сервер и клиент (браузер) кэшируют сеанс, включая криптографические ключи, чтобы повысить производительность и сделатьnot выполнять обмен ключами для каждого запроса.

HTTP 1 is not stateful.  HTTP / 2 однако имеет несколькокомпоненты с состоянием, но "прикладной уровень" до сих пор остается без гражданства.

TL;DR: Транспортный канал (TLS) с состоянием, а HTTP - нет.

Дополнительное примечание: файлы cookie и другие механизмы с сохранением состояния являются более поздними дополнениями, определенными в отдельных документах RFC. Они не являются частью оригиналаHTTP / 1.0 спецификации и не упоминаются вHTTP 1.1 RFC, HTTP 1 считается не имеющим состояния, хотя на практике мы используем стандартизированные механизмы с сохранением состояния. HTTP / 2 определяет компоненты с состоянием в своем стандарте и, следовательно, с состоянием. Определенное приложение HTTP / 2 может использовать подмножество функций HTTP / 2 для поддержания состояния без сохранения состояния.

 02 мар. 2016 г., 02:51
Это лучший ответ ИМО. Понятно и по делу :)

Я полагаю, что HTTPS - это протокол с отслеживанием состояния, поскольку он содержит поле идентификатора сеанса. Он изначально создается сервером для идентификации сеанса с выбранным клиентом.

 20 янв. 2015 г., 20:29
Прочитав самый голосующий голос, я все еще сомневаюсь. Хотя я знаю, что ошибаюсь, на мой взгляд, вполне разумно, что HTTPS является состоянием, поскольку клиент / сервер устанавливает соединение, меняет ключи и затем инициирует передачу данных ... Чего мне не хватает?
 19 авг. 2014 г., 16:15
Пожалуйста, предоставьте ссылки в вашем ответе. Statefulness является широко обсуждаемой темой, и ссылок много.

Ваш ответ на вопрос