будут ли данные, отправленные / полученные через сокет, написанные на разных языках, восприниматься с обеих сторон? - PullRequest
0 голосов
/ 04 июля 2018

Если я использую сокет для соединения двух программ (c ++ и java-скрипт с использованием node.js в моем случае), написанных на разных языках. будут ли введенные данные такими же на другом конце?

1 Ответ

0 голосов
/ 04 июля 2018

Да. Этого можно достичь. Вам нужно будет сериализовать данные со стороны клиента и отправить сериализованные данные на сервер. На стороне сервера десериализуйте полученные данные, чтобы получить исходную структуру данных.

Есть несколько библиотек, которые облегчают это. Экономия является одним из таких примеров. Существуют и другие библиотеки, такие как Avro, Protobuf и т. Д. Вы можете поэкспериментировать с несколькими из них и выяснить, что лучше всего соответствует вашим требованиям.

Эти библиотеки обычно используют Язык определения интерфейса для определения интерфейса, который может включать службы и структуры данных. Затем они могут генерировать код на нескольких языках, чтобы вы могли использовать интерфейс.

Для справки, я лично использовал thrift для связи между сервером C ++ и клиентом Javascript. Работает нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...