DevToys Web Pro iconDevToys Web ProBlog
Nilai kami:
Cuba sambungan pelayar:

Penyahkod / Pengekod Protobuf

Dinyahkod
Format:

Protobuf yang dikodkan Base64

  • Medan yang dinyahkod (2)

  • Medan #Jenis WayarNilai
    1Varint(0)150
    2Length-delimited(2)testing
    Butiran teknikal

    Cara Penyahkod Protobuf Berfungsi

    Apa yang Alat Ini Lakukan

    Penyahkod Protobuf menghuraikan data binari Protocol Buffer mentah tanpa memerlukan fail skema .proto, memaparkan nombor medan format wayar, jenis, dan nilai. Ia juga menyokong pengekodan JSON kembali kepada binari protobuf apabila anda menyediakan definisi .proto. Ini membolehkan anda memeriksa muatan protobuf legap yang ditangkap daripada trafik rangkaian atau disimpan dalam pangkalan data tanpa akses kepada skema asal.

    Kes Penggunaan Pembangun yang Lazim

    Pembangun backend menggunakan penyahkodan protobuf tanpa skema untuk reverse-engineer API gRPC yang tidak didokumenkan, menyahpepijat mesej bersiri dalam topik Kafka, atau memeriksa muatan binari dalam lajur pangkalan data. Penyelidik keselamatan menganalisis trafik rangkaian yang dikodkan protobuf semasa ujian penembusan. Mod pengekodan membantu pembangun mengesahkan bahawa definisi .proto mereka menghasilkan output binari yang dijangka sebelum melancarkan perubahan skema ke perkhidmatan produksi.

    Format Data, Jenis, atau Varian

    Protocol Buffers menggunakan format wayar yang padat dengan lima jenis wayar: varint (int32, int64, bool, enum), tetap 64-bit (double, fixed64), dibatasi panjang (string, bytes, mesej terbenam, medan berulang berpek), tetap 32-bit (float, fixed32), dan jenis kumpulan mula/akhir yang telah ditamatkan. Tanpa skema, penyahkod tidak dapat membezakan antara string dan mesej terbenam (kedua-duanya dibatasi panjang), jadi ia mencuba kedua-dua tafsiran dan menunjukkan huraian yang paling berkemungkinan.

    Perangkap Lazim dan Kes Tepi

    Penyahkodan tanpa skema sememangnya bersifat samar — varint boleh jadi int32 bertanda (zigzag), uint32 tanpa tanda, atau boolean, dan medan yang dibatasi panjang boleh berupa rentetan, bait, atau mesej bersarang. Nama medan hilang dalam pengekodan binari dan hanya muncul sebagai tag medan berangka. Medan berulang yang dipaketkan kelihatan sama seperti satu medan bait tanpa konteks skema. Sentiasa rujuk silang output yang dinyahkod dengan sebarang dokumentasi yang tersedia untuk menyelesaikan kesamaran.

    Bila Perlu Menggunakan Alat Ini Berbanding Kod

    Gunakan alat pelayar ini untuk pemeriksaan pantas payload protobuf yang ditangkap apabila anda tiada fail .proto atau ingin mengesahkan pengekodan tanpa menyediakan rantaian alat binaan. Untuk sistem produksi, gunakan protoc dengan fail skema yang betul, kod terjana khusus bahasa, dan perkhidmatan refleksi gRPC yang menyediakan keselamatan jenis penuh, keserasian ke hadapan, serta integrasi dengan sistem binaan aplikasi anda.