What are the different wire-type values and their description? It lets the serializer know how to read past that data (or store it for round-trip if required). Unanticipated data is in the stream (for example, you've added fields to the data-type at one end), as It is a 3-bit flag that tells it (in broad terms it is only 3 bits after all) what the next data looks like.Įach field in protocol buffers is prefixed by a header that tells it which field (number) it represents,Īnd what type of data is coming next this 'what type of data' is essential to support the case where IS THE INPUT DATA PROTOBUF DATA? If you try and parse another format (json, xml, csv, binary-formatter), or simply broken data (an 'internal server error' html placeholder text page, for example), then it won't work.