Метод bindSecure
Значение address может быть строкой String или объектом InternetAddress. Если address является строкой String, метод bind выполнит поиск адреса InternetAddress.lookup и использует первое значение из списка. Чтобы слушать подключения только с локального хоста, используйте значение InternetAddress.loopbackIPv4 или InternetAddress.loopbackIPv6. Чтобы разрешить подключения с сети, используйте одно из значений InternetAddress.anyIPv4 или InternetAddress.anyIPv6 для привязки ко всем интерфейсам или к IP-адресу конкретного интерфейса.
Если используется адрес версии 6 (IPv6), будут приниматься подключения как версии 6 (IPv6), так и версии 4 (IPv4). Чтобы ограничить это только версией 6 (IPv6), используйте v6Only, чтобы установить значение только для версии 6.
Если port имеет значение 0, система выберет свободный порт. Фактический используемый порт можно получить с помощью port геттера.
Необязательный аргумент backlog может быть использован для указания значения очереди приема подключений для настройки подсистемы приема ОС. Если backlog имеет значение 0 (по умолчанию), система выберет разумное значение.
Если requestClientCertificate равно true, сервер запросит от клиентов аутентификацию с помощью сертификата клиента. Сервер опубликует имена доверенных издателей сертификатов клиентов, получая их из SecurityContext, где они были заданы с помощью SecurityContext.setClientAuthorities.
Необязательный аргумент shared указывает, могут ли дополнительные HttpServer объекты привязываться к той же комбинации address, port и v6Only. Если shared имеет значение true, и больше HttpServer из этого изолята или других изолятов привязаны к порту, тогда входящие подключения будут распределены между всеми привязанными HttpServer. Подключения таким образом могут быть распределены по нескольким изолятам.
Реализация
static Future<HttpServer> bindSecure(
address, int port, SecurityContext context,
{int backlog = 0,
bool v6Only = false,
bool requestClientCertificate = false,
bool shared = false}) =>
_HttpServer.bindSecure(address, port, context, backlog, v6Only,
requestClientCertificate, shared);
© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.18.5/dart-io/HttpServer/bindSecure.html