happytails.ai
Українська

Декодер protobuf

Декодуйте повідомлення protobuf із шістнадцяткового формату або base64. Додайте схему .proto, щоб отримати поля з назвами у форматі JSON proto3, або не додавайте її, щоб переглянути сирі поля wire-формату.

Приймає до 200 000 символів у шістнадцятковому форматі або base64 (до 500 000 байтів) і схему розміром до 100 000 символів. Декодування виконується у браузері. Можна завантажити звіт JSON. Шістнадцяткові цифри (пробіли дозволено) або стандартний base64. До 200 000 символів. Перевірте налаштування перед запуском.

Ваш результат

Повідомте про проблему або поділіться ідеєю.

Декодер protobuf
  1. Вставте байти повідомлення в шістнадцятковому форматі або base64.
  2. За бажанням вставте схему .proto та тип повідомлення.
  3. Запустіть декодер.
  4. Перегляньте декодовані поля та завантажте звіт JSON.

Що варто знати

Приймає до 200 000 символів у шістнадцятковому форматі або base64 (до 500 000 байтів) і схему розміром до 100 000 символів. Декодування виконується у браузері. Можна завантажити звіт JSON.

Зі схемою

Поля мають свої імена JSON. 64-бітні цілі числа — це рядки, bytes — у форматі base64, переліки використовують назви значень, повторювані поля приймають упаковане й розпаковане кодування. Поле повідомлення, передане кілька разів, об’єднується, як у парсерах protobuf. Поля, не визначені схемою, позначаються як невідомі.

Без схеми

Для кожного поля показано його номер і тип wire, а також можливі трактування: беззнакове, знакове та zigzag-ціле число, число фіксованої довжини, текст за коректного кодування байтів UTF-8 і вкладене повідомлення, якщо байти розбираються як таке повідомлення.

Обмеження

Парсер схем підтримує в одному файлі повідомлення proto2 і proto3, переліки, oneof, мапи, вкладені типи й зарезервовані діапазони. Імпорти, групи, розширення та editions не підтримуються. Пошкоджені байти відхиляються, а не декодуються частково.