Перейти к основному содержимому

TCP (Клиент)

Этот раздел посвящен библиотеке для работы с протоколом TCP. На данной странице описаны все действия, необходимые для полноценного начала работы

Для реализации некоторых функции в этой библиотеке используется внешняя компонента
Пожалуйста, ознакомьтесь с разделом "О внешних компонентах" перед началом работы
Для работы этой библиотеки на Linux необходим OpenSSL 3.x
Узнать больше: "Об использовании OpenSSL во внешних компонентах"

О реализованных методах

Данная библиотека предоставляет несколько готовых методов для работы в качестве TCP клиента. Стандартная схема взаимодействия с сервером выглядит следующим образом:

  1. Создание объекта и подключение к серверу производится при помощи функции ОткрытьСоединение. Туда передается строка подключения в формате <адрес>:<порт>
  2. При необходимости, серверу можно отправить сообщение при помощи функций ОтправитьДвоичныеДанные и ОтправитСтроку
  3. Для получения данных от сервера, используются функции ПрочитатьДвоичныеДанные и ПрочитатьСтроку. Они имеют различные параметры для ограничения получаемых данных по размеру, маркеру и ожиданию ввода (таймауту)
  4. При окончании работы желательно явно завершать соединение при помощи функции ЗакрытьСоединение

Для простого сценария со стандартными настройками, также существует функция ОбработатьЗапрос - она отправляет данные на указанный адрес и ждет ответа, завершая чтение при нахождении стандартного маркера \\n. Также это единственная функция, которая доступна в CLI версии ОПИ

TLS

Библиотека поддерживает работу в режиме TLS. Для его включения необходимо сформировать настройки TLS при помощи функции ПолучитьНастройкиTls, и передать их как соответствующий параметр в функцию ОткрытьСоединение или ОбработатьЗапрос. Если параметр TLS при вызове этих функций не передан, соединение инициализируется в незащищенном режиме

Совместимость

Технически, реализация клиента представляет из себя Native компоненту на Rust. Она поставляется в формате zip-архива, и, теоретически, должна работать на всех доступных платформах: x86 и x64 Windows и Linux. Фактическое тестирование проводилось на Windows x64 и, косвенно (через OneScript), на Linux x64