Future<HttpServer> bindSecure(address, int port, SecurityContext context, { int backlog: 0, bool v6Only: false, bool requestClientCertificate: false, bool shared: false })

The address can either be a String or an InternetAddress. If address is a String, bind will perform a InternetAddress.lookup and use the first value in the list. To listen on the loopback adapter, which will allow only incoming connections from the local host, use the value InternetAddress.LOOPBACK_IP_V4 or InternetAddress.LOOPBACK_IP_V6. To allow for incoming connection from the network use either one of the values InternetAddress.ANY_IP_V4 or InternetAddress.ANY_IP_V6 to bind to all interfaces or the IP address of a specific interface.

If an IP version 6 (IPv6) address is used, both IP version 6 (IPv6) and version 4 (IPv4) connections will be accepted. To restrict this to version 6 (IPv6) only, use v6Only to set version 6 only.

If port has the value 0 an ephemeral port will be chosen by the system. The actual port used can be retrieved using the port getter.

The optional argument backlog can be used to specify the listen backlog for the underlying OS listen setup. If backlog has the value of 0 (the default) a reasonable value will be chosen by the system.

If requestClientCertificate is true, the server will request clients to authenticate with a client certificate. The server will advertise the names of trusted issuers of client certificates, getting them from context, where they have been set using SecurityContext.setClientAuthorities.

The optional argument shared specifies whether additional HttpServer objects can bind to the same combination of address, port and v6Only. If shared is true and more HttpServers from this isolate or other isolates are bound to the port, then the incoming connections will be distributed among all the bound HttpServers. Connections can be distributed over multiple isolates this way.

Source

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);