Отправка XML и буфера протокола по одному каналу веб-сокета

#xml #angular #websocket #protocol-buffers

#xml #angular #websocket #буферы протокола

Вопрос:

У меня есть единственное соединение веб-сокета с сервером. Код на стороне клиента написан на Angular 7. Разумно ли использовать оба формата данных «XML и буфер протокола» по этому соединению?

Если да, то как различать оба формата данных?

IMO, для их анализа необходимо использовать подход, основанный на исключениях, например, попробуйте выполнить синтаксический анализ с помощью буфера протокола, если это не удается, попробуйте выполнить синтаксический анализ как XML.

Есть ли какой-либо способ обойти это?

Комментарии:

1. Вы не можете использовать флаг для этого? У меня был веб-сокет, где совместно использовались двоичные и текстовые данные (JSON). Мне просто нужно было установить двоичный флаг true или false. можно попробовать этот подход

2. Когда я получаю двоичные данные .. Что касается буфера протокола, я напрямую конвертирую, используя сгенерированный класс из proto schema. Итак, вы имеете в виду интерпретировать первый байт / логическое значение сообщения и затем проанализировать его?

3. how to differentiate between both the data formats? как вы это сделали?

4. На данный момент я пытаюсь сначала выполнить синтаксический анализ как protobuf. Если это не удается, тогда я использую TextDecoder для получения xml / json и его анализа.

5. Вы не можете отправить флаг?. Вместо того, чтобы разбирать двоичный файл с помощью protobuf и затем принимать решение, сначала примите решение, а затем выберите способ разбора.