Метод secureServer
Future<SecureSocket> secureServer(Принимает уже подключённый socket и запускает TLS-рукопожатие на стороне сервера, чтобы сделать общение безопасным. Когда возвращённое будущее завершится, SecureSocket завершит TLS-рукопожатие. Использование этой функции требует, чтобы другая сторона соединения начала TLS-рукопожатие.
Если у socket уже есть подписка, эта подписка больше не будет получать и обрабатывать события. В большинстве случаев вызов pause на этой подписке перед началом TLS-рукопожатия — правильное действие.
Если часть данных TLS-рукопожатия уже была прочитана из сокета, эти данные можно передать в параметр bufferedData. Эти данные будут обработаны перед любыми другими данными, доступными в сокете.
См. SecureServerSocket.bind для получения дополнительной информации об аргументах.
Источник
static Future<SecureSocket> secureServer(
Socket socket, SecurityContext context,
{List<int> bufferedData,
bool requestClientCertificate: false,
bool requireClientCertificate: false,
List<String> supportedProtocols}) {
return ((socket as dynamic /*_Socket*/)._detachRaw() as Future)
.then<RawSecureSocket>((detachedRaw) {
return RawSecureSocket.secureServer(detachedRaw[0] as RawSocket, context,
subscription: detachedRaw[1] as StreamSubscription<RawSocketEvent>,
bufferedData: bufferedData,
requestClientCertificate: requestClientCertificate,
requireClientCertificate: requireClientCertificate,
supportedProtocols: supportedProtocols);
}).then<SecureSocket>((raw) => new SecureSocket._(raw));
}
© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.
https://api.dartlang.org/stable/1.24.3/dart-io/SecureSocket/secureServer.html