Класс RawSecureSocket
RawSecureSocket обеспечивает защищенное (SSL или TLS) сетевое соединение.
Клиентские соединения с сервером создаются с помощью вызова RawSecureSocket.connect. Защищенный сервер, созданный с помощью RawSecureServerSocket, также возвращает RawSecureSocket объекты, представляющие серверную часть защищенного соединения. Сертификат, предоставленный сервером, проверяется с помощью набора доверенных сертификатов, заданных в объекте SecurityContext. По умолчанию объект SecurityContext содержит встроенный набор доверенных корневых сертификатов для известных авторитетных центров сертификации.
- Реализованные типы
Конструкторы
- RawSecureSocket()
Свойства
- address → InternetAddress только для чтения, унаследованное
- InternetAddress, используемый для подключения этого сокета.
- first → Future<
RawSocketEvent> только для чтения, унаследованное - Первый элемент этого потока.
- hashCode → int только для чтения, унаследованное
- Код хеширования для этого объекта.
- isBroadcast → bool только для чтения, унаследованное
- Является ли этот поток потоком широковещательной передачи.
- isEmpty → Future<
bool> только для чтения, унаследованное - Содержит ли этот поток какие-либо элементы.
- last → Future<
RawSocketEvent> только для чтения, унаследованное - Последний элемент этого потока.
- length → Future<
int> только для чтения, унаследованное - Количество элементов в этом потоке.
- peerCertificate → X509Certificate? только для чтения
- Получение сертификата удалённого узла для подключенного RawSecureSocket. Если этот RawSecureSocket является серверной частью защищённого сокетного соединения, peerCertificate вернёт сертификат клиента, или null, если сертификат клиента не был получен. Если это клиентская часть, peerCertificate вернёт сертификат сервера.
- port → int только для чтения, унаследованное
- Порт, используемый этим сокетом.
- readEventsEnabled ↔ bool чтение / запись, унаследованное
- Установка или получение значения, указывающего, должен ли RawSocket прослушивать события RawSocketEvent.read. Значение по умолчанию -
true. - remoteAddress → InternetAddress только для чтения, унаследованное
- Удалённый InternetAddress, подключенный к этому сокету.
- remotePort → int только для чтения, унаследованное
- Удалённый порт, подключенный к этому сокету.
- runtimeType → Type только для чтения, унаследованное
- Представление типа объекта во время выполнения.
- selectedProtocol → String? только для чтения
- Протокол, выбранный во время согласования протокола.
- single → Future<
RawSocketEvent> только для чтения, унаследованное - Единственный элемент этого потока.
- writeEventsEnabled ↔ bool чтение / запись, унаследованное
- Установка или получение значения, указывающего, должен ли RawSocket прослушивать события RawSocketEvent.write. Значение по умолчанию -
true. Это прослушиватель "единоразового" типа, и writeEventsEnabled необходимо установить в true снова для получения другого события write.
Методы
- any(
bool test(RawSocketEvent element)) → Future< bool> inherited - Проверяет, принимает ли
testлюбое предоставляемое этим потоком событие. - asBroadcastStream(
{void onListen(StreamSubscription< RawSocketEvent> subscription)?, void onCancel(StreamSubscription< RawSocketEvent> subscription)?}) → Stream< RawSocketEvent> inherited - Возвращает поток с множественными подписками, генерирующий те же события, что и этот.
- asyncExpand<
E>( Stream< E>? convert(RawSocketEvent event)) → Stream< E> inherited - Преобразует каждое событие в последовательность асинхронных событий.
- asyncMap<
E>( FutureOr< E> convert(RawSocketEvent event)) → Stream< E> inherited - Создаёт новый поток, асинхронно отображающий каждое событие данных этого потока в новое событие.
- available(
) → int inherited - Количество полученных и не прочитанных байтов в сокете, которые можно прочитать.
- cast<
R>( ) → Stream< R> inherited - Адаптирует этот поток к
Stream<R>. - close(
) → Future< RawSocket> inherited - Закрывает сокет.
- contains(
Object? needle) → Future< bool> inherited - Возвращает, встречается ли
needleв событиях, предоставляемых этим потоком. - distinct(
[bool equals(RawSocketEvent previous, RawSocketEvent next)?]) → Stream< RawSocketEvent> inherited - Пропускает события данных, если они равны предыдущему событию данных.
- drain<
E>( [E? futureValue]) → Future< E> inherited - Отбрасывает все данные в этом потоке, но сигнализирует, когда он завершен или произошла ошибка.
- elementAt(
int index) → Future< RawSocketEvent> inherited - Возвращает значение
index-го события данных этого потока. - every(
bool test(RawSocketEvent element)) → Future< bool> inherited - Проверяет, принимает ли
testвсе события, предоставленные этим потоком. - expand<
S>( Iterable< S> convert(RawSocketEvent element)) → Stream< S> inherited - Преобразует каждое событие этого потока в последовательность событий.
- firstWhere(
bool test(RawSocketEvent element), {RawSocketEvent orElse()?}) → Future< RawSocketEvent> inherited - Находит первое событие в этом потоке, соответствующее
test. - fold<
S>( S initialValue, S combine(S previous, RawSocketEvent element)) → Future< S> inherited - Объединяет последовательность значений, повторяя применение
combine. - forEach(
void action(RawSocketEvent element)) → Future inherited - Выполняет
actionдля каждого элемента в этом потоке. - getRawOption(
RawSocketOption option) → Uint8List @Since("2.2"), inherited - Читает низкоуровневую информацию о RawSocket.
- handleError(
Function onError, {bool test(dynamic error)?}) → Stream< RawSocketEvent> inherited - Создаёт обёрнутый поток, перехватывающий некоторые ошибки из этого потока.
- join(
[String separator = ""]) → Future< String> inherited - Объединяет строковые представления элементов в одну строку.
- lastWhere(
bool test(RawSocketEvent element), {RawSocketEvent orElse()?}) → Future< RawSocketEvent> inherited - Находит последнее событие в этом потоке, соответствующее
test. - listen(
void onData(RawSocketEvent event)?, {Function? onError, void onDone()?, bool? cancelOnError}) → StreamSubscription< RawSocketEvent> inherited - Добавляет подписку на этот поток.
- map<
S>( S convert(RawSocketEvent event)) → Stream< S> inherited - Преобразует каждое событие этого потока в новое событие потока.
- noSuchMethod(
Invocation invocation) → dynamic inherited - Вызывается при доступе к несуществующему методу или свойству.
- pipe(
StreamConsumer< RawSocketEvent> streamConsumer) → Future inherited - Перенаправляет события этого потока в
streamConsumer. - read(
[int? len]) → Uint8List? inherited - Читает до
lenбайтов из сокета. - readMessage(
[int? count]) → SocketMessage? @Since("2.15"), inherited - Читает сообщение, содержащее до
countбайтов из сокета. - reduce(
RawSocketEvent combine(RawSocketEvent previous, RawSocketEvent element)) → Future< RawSocketEvent> inherited - Объединяет последовательность значений, применяя
combine. - renegotiate(
{bool useSessionCache = true, bool requestClientCertificate = false, bool requireClientCertificate = false}) → void @Deprecated("Not implemented") - Ничего не делает.
- sendMessage(
Список< СообщениеУправленияСокетом> controlMessages, Список< int> data, [int offset = 0, int? count]) → int @Since("2.15"), inherited - Записывает сообщения управления сокетом и байты данных в сокет.
- setOption(
НастройкаСокета option, bool enabled) → bool inherited - Настраивает RawSocket.
- setRawOption(
НастройкаНеобработанногоСокета option) → void @Since("2.2"), inherited - Настраивает RawSocket.
- shutdown(
НаправлениеСокета direction) → void inherited - Закрывает сокет в
direction. - singleWhere(
bool test(СобытиеНеобработанногоСокета element), {СобытиеНеобработанногоСокета orElse()?}) → Future< СобытиеНеобработанногоСокета> inherited - Находит единственный элемент в этом потоке, соответствующий
test. - skip(
int count) → Поток< СобытиеНеобработанногоСокета> inherited - Пропускает первые
countсобытий данных из этого потока. - skipWhile(
bool test(СобытиеНеобработанногоСокета element)) → Поток< СобытиеНеобработанногоСокета> inherited - Пропускает события данных из этого потока, пока они соответствуют
test. - take(
int count) → Поток< СобытиеНеобработанногоСокета> inherited - Предоставляет не более первых
countсобытий данных из этого потока. - takeWhile(
bool test(СобытиеНеобработанногоСокета element)) → Поток< СобытиеНеобработанногоСокета> inherited - Передает события данных, пока
testуспешно. - timeout(
Продолжительность timeLimit, {void onTimeout(ПотокВывода< СобытиеНеобработанногоСокета> sink)?}) → Поток< СобытиеНеобработанногоСокета> inherited - Создает новый поток с теми же событиями, что и этот поток.
- toList(
) → Future< Список< СобытиеНеобработанногоСокета>> inherited - Собрать все элементы этого потока в
List. - toSet(
) → Future< Множество< СобытиеНеобработанногоСокета>> inherited - Собрать данные этого потока в
Set. - toString(
) → Строка inherited - Строковое представление этого объекта.
- transform<
S>( ПреобразовательПотока< СобытиеНеобработанногоСокета, S> streamTransformer) → Поток< S> inherited - Применяет
streamTransformerк этому потоку. - where(
bool test(СобытиеНеобработанногоСокета event)) → Поток< СобытиеНеобработанногоСокета> inherited - Создает новый поток из этого потока, отбрасывая некоторые элементы.
- write(
Список< int> buffer, [int offset = 0, int? count]) → int inherited - Записывает до
countбайтов буфера сoffsetсмещения буфера в сокет.
Операторы
- operator ==(
Объект other) → bool inherited - Оператор равенства.
Статические методы
- connect(
динамический host, int port, {КонтекстБезопасности? context, bool onBadCertificate(X509Certificate certificate)?, void keyLog(Строка line)?, Список< Строка>? supportedProtocols, Продолжительность? timeout}) → Future< RawSecureSocket> override - Создает новый защищенный сокет клиента и подключает его к указанному хосту на указанном порту.
- secure(
RawSocket socket, {ПодпискаНаПоток< СобытиеНеобработанногоСокета>? subscription, динамический host, КонтекстБезопасности? context, bool onBadCertificate(X509Certificate certificate)?, void keyLog(Строка line)?, Список< Строка>? supportedProtocols}) → Future< RawSecureSocket> - Инициализирует TLS для существующего соединения.
- secureServer(
RawSocket socket, КонтекстБезопасности? context, {ПодпискаНаПоток< СобытиеНеобработанногоСокета>? subscription, Список< int>? bufferedData, bool requestClientCertificate = false, bool requireClientCertificate = false, Список< Строка>? supportedProtocols}) → Future< RawSecureSocket> - Инициализирует TLS для существующего серверного соединения.
- startConnect(
динамический host, int port, {КонтекстБезопасности? context, bool onBadCertificate(X509Certificate certificate)?, void keyLog(Строка line)?, Список< Строка>? supportedProtocols}) → Future< ЗадачаПодключения< RawSecureSocket>> override - Как connect, но возвращает Future, который завершается задачей подключения, которую можно отменить, если RawSecureSocket больше не нужен.
© 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/RawSecureSocket-class.html