#c# #testing #https #webrequest
#c# #тестирование #https #webrequest
Вопрос:
Я разрабатываю API, в документации которого говорится, что клиентский код должен иметь возможность поддерживать соединение HTTPS открытым до 15 секунд
Я хотел бы иметь возможность подтвердить этот критерий программно, предпочтительно с помощью интеграционного теста, который выполняется при каждой сборке и удерживает соединение открытым в течение 15 секунд перед передачей. (Если только C # WebRequests где-то не гарантируют, что они смогут поддерживать соединение открытым так долго)
Есть ли способ сделать это?
Ответ №1:
Это двусторонняя вещь; сервер должен поддерживать это, и клиенту, вероятно, нужно установить какой-то флаг сохранения. Смотрите здесь .
В этом примере значение KeepAlive равно false; вы бы хотели, чтобы оно было установлено в true.
Выдержка из MSDN:
При использовании HTTP / 1.1 функция Keep-Alive включена по умолчанию. Установка значения KeepAlive в false может привести к отправке заголовка Connection: Close на сервер.