Spec-Zone.ru › Dart 2

dart:io

статический метод bind

Future<HttpServer> bind(
  1. dynamic address,
  2. int port,
  3. {int backlog = 0,
  4. bool v6Only = false,
  5. bool shared = false}
)

Начинает прослушивание HTTP-запросов на указанном address и port.

В качестве address можно указать String или InternetAddress. Если address имеет тип String, bind выполнит поиск InternetAddress.lookup и использует первое значение в списке. Чтобы прослушивать loopback-адаптер, который будет принимать только входящие подключения с локального узла, используйте значение InternetAddress.loopbackIPv4 или InternetAddress.loopbackIPv6. Чтобы принимать входящие подключения из сети, используйте одно из значений InternetAddress.anyIPv4 или InternetAddress.anyIPv6 для привязки ко всем интерфейсам либо IP-адрес конкретного интерфейса.

Если используется адрес IP версии 6 (IPv6), будут приниматься подключения как по IP версии 6 (IPv6), так и по версии 4 (IPv4). Чтобы принимать подключения только по версии 6 (IPv6), используйте v6Only, чтобы задать режим только версии 6. Однако, если адрес — InternetAddress.loopbackIPv6, будут приниматься только подключения по IP версии 6 (IPv6).

Если значение port равно 0, система выберет эфемерный порт. Фактически используемый порт можно получить с помощью геттера port.

Необязательный аргумент backlog можно использовать для указания длины очереди ожидания подключений при настройке прослушивания в базовой ОС. Если значение backlog равно 0 (по умолчанию), система выберет подходящее значение.

Необязательный аргумент shared определяет, могут ли дополнительные объекты HttpServer привязываться к той же комбинации address, port и v6Only. Если shared имеет значение true и к порту привязано больше HttpServer из этого или других изолятов, входящие подключения будут распределяться между всеми привязанными объектами HttpServer. Таким образом подключения можно распределять между несколькими изолятами.

Реализация

static Future<HttpServer> bind(address, int port,
        {int backlog = 0, bool v6Only = false, bool shared = false}) =>
    _HttpServer.bind(address, port, backlog, v6Only, shared);

© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.19.6/dart-io/HttpServer/bind.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API